Rating@Mail.ru

Форум по операционной системе GNU/Linux и свободному программному обеспечению


Текущее время: 19 сен 2017, 14:42

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 19 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Kotlin
Непрочитанное сообщениеДобавлено: 25 май 2017, 12:40 
Не в сети
Писатель
Аватара пользователя

Зарегистрирован: 24 сен 2011, 14:22
Сообщения: 10060
Откуда: Харьков
Kotlin
Цитата:
Kotlin (Ко́тлин) — статически типизированный язык программирования, работающий поверх JVM и разрабатываемый компанией JetBrains. Компилируется также в JavaScript и на другие платформы через инфраструктуру LLVM. Язык назван в честь острова Котлин в Финском заливе, на котором расположен город Кронштадт[4].

Авторы ставили целью создать язык более лаконичный и типобезопасный, чем Java, и более простой, чем Scala[4]. Следствием упрощения по сравнению со Scala стали также более быстрая компиляция и лучшая поддержка языка в IDE[5].

Цитата:
Язык разрабатывается с 2010 года, публично представлен в июле 2011[3]. Исходный код реализации языка был открыт в феврале 2012[6]. В феврале был выпущен milestone 1, включающий плагин для IDEA. В июне — milestone 2 с поддержкой Android[7]. В декабре 2012 года вышел milestone 4, включающий, в частности, поддержку Java 7[8].

В феврале 2016 года вышел официальный релиз-кандидат версии 1.0[9], а 15 февраля 2016 года — релиз 1.0[10]. 1 марта 2017 вышел релиз 1.1[11].

В мае 2017 года компания Google сообщила, что инструменты языка Kotlin основанные на JetBrains IDE будут по стандарту включены в Android Studio 3.0 — официальный инструмент разработки для ОС Android[12].

Цитата:
Позиционируется разработчиками как объектно-ориентированный язык промышленного уровня, а также как язык, который сможет заменить Java. При этом язык полностью совместим с Java, что позволяет разработчикам постепенно перейти с Java на Kotlin. В частности, в Android язык интегрируется с помощью Gradle, что позволяет для существующего Android-приложения внедрять новые функции на Kotlin без переписывания приложения целиком.

Цитата:
Синтаксис языка похож на Pascal, TypeScript, Haxe, PL/SQL, F#, Go и Scala, C++, Java, C# и D. При объявлении переменных и параметров, типы данных указываются после названия (разделитель двоеточие). Точка с запятой как разделитель операторов является не обязательной, также как в Scala и Groovy, в большинстве случаев перевода строки достаточно чтобы компилятор понял, что выражение закончилось. Кроме объектно-ориентированного подхода, Kotlin также поддерживает процедурный стиль с использованием функций. Как и в языках C/C++/D, точкой входа в программе является функция "main", которая принимает массив параметров командной строки. Программы на Kotlin также поддерживают Perl и Unix/Linux shell стиль интерпретации строк. Kotlin также поддерживает вывод типов.


Вернуться к началу
 Профиль Отправить личное сообщение  
 
 Заголовок сообщения: Re: Kotlin
Непрочитанное сообщениеДобавлено: 25 май 2017, 12:46 
Не в сети
Писатель
Аватара пользователя

Зарегистрирован: 24 сен 2011, 14:22
Сообщения: 10060
Откуда: Харьков
Изображение Руководство по языку Kotlin
Цитата:
Здесь мы собираем ресурсы по Котлину и переводим документацию. Сообщество открыто для новых участников - любого кто может переводить и проверять перевод. Редактирование текста происходит похожим на википедию образом, с той лишь разницей, что тексты и структура меню хранятся в GIT.


Вернуться к началу
 Профиль Отправить личное сообщение  
 
 Заголовок сообщения: Re: Kotlin
Непрочитанное сообщениеДобавлено: 25 май 2017, 12:58 
Не в сети
Писатель
Аватара пользователя

Зарегистрирован: 24 сен 2011, 14:22
Сообщения: 10060
Откуда: Харьков
Сайт проекта Kotlin (англ.)
Try online
Цитата:
Код:
/**
 * We declare a package-level function main which returns Unit and takes
 * an Array of strings as a parameter. Note that semicolons are optional.
 */

fun main(args: Array<String>) {
    println("Hello, world!")
}

Цитата:
USE
IntelliJ IDEA
Bundled with Community Edition or IntelliJ IDEA Ultimate

Цитата:
USE
Android Studio
Bundled with Studio 3.0, plugin available for earlier versions

Цитата:
USE Eclipse
Install the plugin from the Eclipse Marketplace

Цитата:
STANDALONE Compiler
Use any editor and build from the command line

Working with the Command Line Compiler
Цитата:
Downloading the compiler
Every release ships with a standalone version of the compiler. We can download it from GitHub Releases. The latest release is 1.1.2-2.
Manual Install
Unzip the standalone compiler into a directory and optionally add the bin directory to the system path. The bin directory contains the scripts needed to compile and run Kotlin on Windows, OS X and Linux.

Цитата:
SDKMAN!
An easier way to install Kotlin on UNIX based systems such as OS X, Linux, Cygwin, FreeBSD and Solaris is by using SDKMAN!. Simply run the following in a terminal and follow any instructions:
Код:
   $ curl -s https://get.sdkman.io | bash

Next open a new terminal and install Kotlin with:
Код:
   $ sdk install kotlin



Вернуться к началу
 Профиль Отправить личное сообщение  
 
 Заголовок сообщения: Re: Kotlin
Непрочитанное сообщениеДобавлено: 25 май 2017, 13:42 
Не в сети
Писатель
Аватара пользователя

Зарегистрирован: 24 сен 2011, 14:22
Сообщения: 10060
Откуда: Харьков
Olej писал(а):
Working with the Command Line Compiler
Цитата:
Downloading the compiler
Every release ships with a standalone version of the compiler. We can download it from GitHub Releases. The latest release is 1.1.2-2.
Manual Install
Unzip the standalone compiler into a directory and optionally add the bin directory to the system path. The bin directory contains the scripts needed to compile and run Kotlin on Windows, OS X and Linux.


Код:
[olej@dell Tools]$ ls -l kotlin-compiler-1.1.2-2.zip
-rw-rw-r-- 1 olej olej 30085191 май 25 13:37 kotlin-compiler-1.1.2-2.zip

Код:
[olej@dell kotlinc]$ cd ~/kotlinc

[olej@dell kotlinc]$ ls -l
итого 4
drwxr-xr-x 1 olej olej  168 апр 27 19:20 bin
-rw-r--r-- 1 olej olej    7 апр 27 19:20 build.txt
drwxr-xr-x 1 olej olej 1258 апр 27 19:33 lib
drwxr-xr-x 1 olej olej   64 апр 27 19:20 license

[olej@dell kotlinc]$ du -hs
32M     .


Вернуться к началу
 Профиль Отправить личное сообщение  
 
 Заголовок сообщения: Re: Kotlin
Непрочитанное сообщениеДобавлено: 25 май 2017, 16:11 
Не в сети
Писатель
Аватара пользователя

Зарегистрирован: 24 сен 2011, 14:22
Сообщения: 10060
Откуда: Харьков
Olej писал(а):
Цитата:
SDKMAN!
An easier way to install Kotlin on UNIX based systems such as OS X, Linux, Cygwin, FreeBSD and Solaris is by using SDKMAN!. Simply run the following in a terminal and follow any instructions:
Код:
   $ curl -s https://get.sdkman.io | bash

Next open a new terminal and install Kotlin with:
Код:
   $ sdk install kotlin


Я не знаю (к стыду своему) что такое SDKMAN! (и с этим стоит отдельно разобраться) ... но:
Код:
[olej@dell ~]$ curl -s https://get.sdkman.io | bash
                                                                              
Thanks for using...                                                           
                                                                              
                                                                              
     SSSSSSSSSSSSSSS DDDDDDDDDDDDD       KKKKKKKKK    KKKKKKK                 
   SS:::::::::::::::SD::::::::::::DDD    K:::::::K    K:::::K                 
  S:::::SSSSSS::::::SD:::::::::::::::DD  K:::::::K    K:::::K                 
  S:::::S     SSSSSSSDDD:::::DDDDD:::::D K:::::::K   K::::::K                 
  S:::::S              D:::::D    D:::::DKK::::::K  K:::::KKK                 
  S:::::S              D:::::D     D:::::D K:::::K K:::::K                     
   S::::SSSS           D:::::D     D:::::D K::::::K:::::K                     
    SS::::::SSSSS      D:::::D     D:::::D K:::::::::::K                       
      SSS::::::::SS    D:::::D     D:::::D K:::::::::::K                       
         SSSSSS::::S   D:::::D     D:::::D K::::::K:::::K                     
              S:::::S  D:::::D     D:::::D K:::::K K:::::K                     
              S:::::S  D:::::D    D:::::DKK::::::K  K:::::KKK                 
  SSSSSSS     S:::::SDDD:::::DDDDD:::::D K:::::::K   K::::::K                 
  S::::::SSSSSS:::::SD:::::::::::::::DD  K:::::::K    K:::::K                 
  S:::::::::::::::SS D::::::::::::DDD    K:::::::K    K:::::K                 
   SSSSSSSSSSSSSSS   DDDDDDDDDDDDD       KKKKKKKKK    KKKKKKK                 
                                                                               
                                                                               
                      mmmmmmm    mmmmmmm     aaaaaaaaaaaaa  nnnn  nnnnnnnn     
                    mm:::::::m  m:::::::mm   a::::::::::::a n:::nn::::::::nn   
                   m::::::::::mm::::::::::m  aaaaaaaaa:::::an::::::::::::::nn 
                   m::::::::::::::::::::::m           a::::ann:::::::::::::::n
                   m:::::mmm::::::mmm:::::m    aaaaaaa:::::a  n:::::nnnn:::::n
                   m::::m   m::::m   m::::m  aa::::::::::::a  n::::n    n::::n
                   m::::m   m::::m   m::::m a::::aaaa::::::a  n::::n    n::::n
                   m::::m   m::::m   m::::ma::::a    a:::::a  n::::n    n::::n
                   m::::m   m::::m   m::::ma::::a    a:::::a  n::::n    n::::n
                   m::::m   m::::m   m::::ma:::::aaaa::::::a  n::::n    n::::n
                   m::::m   m::::m   m::::m a::::::::::aa:::a n::::n    n::::n
                   mmmmmm   mmmmmm   mmmmmm  aaaaaaaaaa  aaaa nnnnnn    nnnnnn
                                                                         
                                                                         
                                                 Now attempting installation...
                                                                               
Looking for a previous installation of SDKMAN...
Looking for unzip...
Looking for zip...
Looking for curl...
Looking for sed...
Installing SDKMAN scripts...
Create distribution directories...
Getting available candidates...
Prime the config file...
Download script archive...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
100 20838  100 20838    0     0  11718      0  0:00:01  0:00:01 --:--:-- 11718
Extract script archive...
Install scripts...
Set version to 5.5.9+231 ...
Attempt update of bash profiles...
Updated existing /home/olej/.bash_profile
Updated existing /home/olej/.bashrc
Attempt update of zsh profiles...
Created and initialised /home/olej/.zshrc



All done!


Please open a new terminal, or run the following in the existing one:

    source "/home/olej/.sdkman/bin/sdkman-init.sh"

Then issue the following command:

    sdk help

Enjoy!!!

После чего :!:
Код:
[olej@dell ~]$ tail -n3 .bashrc
#THIS MUST BE AT THE END OF THE FILE FOR SDKMAN TO WORK!!!
export SDKMAN_DIR="/home/olej/.sdkman"
[[ -s "/home/olej/.sdkman/bin/sdkman-init.sh" ]] && source "/home/olej/.sdkman/bin/sdkman-init.sh"

Т.е. использовать это можно только в последующих сессиях запуска bash!
Код:
[olej@dell ~]$ sdk install kotlin

Downloading: kotlin 1.1.2-2

In progress...

######################################################################## 100,0%

Installing: kotlin 1.1.2-2
Done installing!


Setting kotlin 1.1.2-2 as default.

Код:
[olej@dell ~]$ echo $PATH
/home/olej/.sdkman/candidates/kotlin/current/bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/home/olej/.local/bin:/home/olej/bin

Код:
[olej@dell Yandex]$ tree ~/.sdkman/candidates/kotlin/1.1.2-2
/home/olej/.sdkman/candidates/kotlin/1.1.2-2
├── bin
│   ├── kotlin
│   ├── kotlin.bat
│   ├── kotlinc
│   ├── kotlinc.bat
│   ├── kotlinc-js
│   ├── kotlinc-js.bat
│   ├── kotlinc-jvm
│   └── kotlinc-jvm.bat
├── build.txt
├── lib
│   ├── allopen-compiler-plugin.jar
│   ├── android-extensions-compiler.jar
│   ├── kotlin-annotation-processing.jar
│   ├── kotlin-ant.jar
│   ├── kotlin-build-common-test.jar
│   ├── kotlin-compiler-client-embeddable.jar
│   ├── kotlin-compiler.jar
│   ├── kotlin-daemon-client.jar
│   ├── kotlin-jslib.jar
│   ├── kotlin-jslib-sources.jar
│   ├── kotlin-preloader.jar
│   ├── kotlin-reflect.jar
│   ├── kotlin-runner.jar
│   ├── kotlin-runtime.jar
│   ├── kotlin-runtime-sources.jar
│   ├── kotlin-script-runtime.jar
│   ├── kotlin-script-runtime-sources.jar
│   ├── kotlin-stdlib.jar
│   ├── kotlin-stdlib-js.jar
│   ├── kotlin-stdlib-js-sources.jar
│   ├── kotlin-stdlib-sources.jar
│   ├── kotlin-test.jar
│   ├── kotlin-test-js.jar
│   ├── noarg-compiler-plugin.jar
│   ├── sam-with-receiver-compiler-plugin.jar
│   └── source-sections-compiler-plugin.jar
└── license
    ├── LICENSE.txt
    ├── NOTICE.txt
    └── third_party
        ├── args4j_LICENSE.txt
        ├── asm_license.txt
        ├── closure-compiler_LICENSE.txt
        ├── dart_LICENSE.txt
        ├── jshashtable_license.txt
        ├── json_LICENSE.txt
        ├── maven_LICENSE.txt
        ├── pcollections_LICENSE.txt
        ├── prototype_license.txt
        ├── rhino_LICENSE.txt
        ├── scala_license.txt
        ├── trove_license.txt
        └── trove_readme_license.txt

4 directories, 50 files

Код:
[olej@dell Yandex]$ which kotlin
~/.sdkman/candidates/kotlin/current/bin/kotlin


Вернуться к началу
 Профиль Отправить личное сообщение  
 
 Заголовок сообщения: Re: Kotlin
Непрочитанное сообщениеДобавлено: 25 май 2017, 16:16 
Не в сети
Писатель
Аватара пользователя

Зарегистрирован: 24 сен 2011, 14:22
Сообщения: 10060
Откуда: Харьков
Т.е. и 1-й (GitHub) и 2-й (SDKMAN!) работает (и с достаточно подобным результатом)...

Тестируем:
Код:
[olej@dell Kotlin]$ cat hello.kt
fun main(args: Array<String>) {
    println("Hello, World!")
}

Код:
[olej@dell Kotlin]$ kotlinc hello.kt -include-runtime -d hello.jar

[olej@dell Kotlin]$ ls
hello.jar  hello.kt

Код:
[olej@dell Kotlin]$ java -jar hello.jar
Hello, World!


Компиляция в библиотеку, без прикомпилированной исполнимой части, для создания модульных программ:
Код:
[olej@dell Kotlin]$ kotlinc hello.kt -d hello.jar

[olej@dell Kotlin]$ ls -l
итого 8
-rw-rw-r-- 1 olej olej 1138 май 25 16:23 hello.jar
-rw-rw-r-- 1 olej olej   63 май 25 13:52 hello.kt

Код:
[olej@dell Kotlin]$ kotlin -classpath hello.jar HelloKt
Hello, World!


Вернуться к началу
 Профиль Отправить личное сообщение  
 
 Заголовок сообщения: Re: Kotlin
Непрочитанное сообщениеДобавлено: 25 май 2017, 16:55 
Не в сети
Писатель
Аватара пользователя

Зарегистрирован: 24 сен 2011, 14:22
Сообщения: 10060
Откуда: Харьков
Теперь, разобравшись (по самым верхам) с установкой и использованием инструментария Kotlin (онлайн Интернет и CLI варианты для Linux), можно перейти к справочным источникам по самому языку Kotlin...

Books:
Цитата:
Изображение

Изображение

Изображение

Изображение

Изображение


Вернуться к началу
 Профиль Отправить личное сообщение  
 
 Заголовок сообщения: Re: Kotlin
Непрочитанное сообщениеДобавлено: 25 май 2017, 17:01 
Не в сети
Писатель
Аватара пользователя

Зарегистрирован: 24 сен 2011, 14:22
Сообщения: 10060
Откуда: Харьков
Olej писал(а):
можно перейти к справочным источникам по самому языку Kotlin...

Полная редакция оригинальной документации от разработчиков: Reference.

Немного о Kotlin
Цитата:
20 февраля 2016 в 08:25
Две главных особенности котлина, на мой взгляд, это его простота и полная совместимость с Java. Котлин создавался компанией, которая делает очень много продуктов на Java и которая хорошо разбирается в современных инструментах разработки. Запрос на новый язык витает в воздухе давно, но сделать такой язык, который бы позволил взять (огромную) готовую кодовую базу Java, обычных Java-разработчиков, дать им новый инструмент и бесшовно (но более эффективно) продолжать разработку — такого инструмента до появления котлина не существовало. Создатели нового языка, на мой взгляд, очень хорошо почувствовали потребности бизнеса и разработчиков: бизнесу дали возможность увеличить эффективность разработчиков, а разработчикам дать современный инструмент для разработки. И когда я говорю о «современном инструменте», я, конечно, имею ввиду не только компилятор, но и поддержку в IDE, без которой лично моя деятельность разработчика мне видится совсем немыслимой.
В итоге: простота позволяет использовать язык почти любому Java-разработчику, который готов потратить полчаса на то, чтобы посмотреть туториал или спецификацию языка, обратная совместимость же позволяет использовать язык в уже существующем проекте.


Почему следует полностью переходить на Kotlin
Цитата:
вчера в 19:01
Хочу рассказать вам о новом языке программирования, который называется Kotlin, и объяснить, почему вам стоит использовать его в своём следующем проекте. Раньше я предпочитал Java, но в последний год пишу на Kotlin везде, где только можно. И в данный момент я не представляю себе ситуации, в которой лучше было бы выбрать Java.


Вернуться к началу
 Профиль Отправить личное сообщение  
 
 Заголовок сообщения: Re: Kotlin
Непрочитанное сообщениеДобавлено: 28 май 2017, 20:41 
Не в сети
Писатель
Аватара пользователя

Зарегистрирован: 24 сен 2011, 14:22
Сообщения: 10060
Откуда: Харьков
Перевожу некоторые главы оригинальной документации Kotlin.
Эти переводы документации вы можете найти здесь: Руководство по языку Kotlin.
Это единственно доступное описание (пока?) на русском языке, но этого описание недостаточно в качестве учебника по языку, это может рассматриваться только как "Справочник по языку".


Вернуться к началу
 Профиль Отправить личное сообщение  
 
 Заголовок сообщения: Re: Kotlin
Непрочитанное сообщениеДобавлено: 29 май 2017, 14:37 
Не в сети
Писатель
Аватара пользователя

Зарегистрирован: 24 сен 2011, 14:22
Сообщения: 10060
Откуда: Харьков
Официально каналом обсуждения Kotlin от JetBrains (разработчика) является корпоративный месенжер Slack.
Для того, чтобы получить доступ, нужно:
- обратиться на WEB Slack интерфейс: http://slack.kotlinlang.org/ ...
- вписать свой мэйл
- получить на почту инвайт (приглашение)
- войти в чат...
- пройти несколько страниц подтверждений...
- выбрать интересующий канал обсуждений...
В частности, русскоязычный канал пользователей здесь: https://kotlinlang.slack.com/messages/C2X2LMYQ2/
Первые 2 картинки показывают этот ресурс через WEB-браузер.
Последняя картинка показывает тот же ресурс (русскоязычный канал) в автономном клиенте Slack.


Вложения:
jb0.png
jb0.png [ 109.66 КБ | Просмотров: 335 ]
jb.png
jb.png [ 172.13 КБ | Просмотров: 335 ]
sl3.png
sl3.png [ 123.14 КБ | Просмотров: 335 ]
Вернуться к началу
 Профиль Отправить личное сообщение  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 19 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB
[ Time : 0.554s | 22 Queries | GZIP : On ]