На понятном языке
С 21 по 26 июня в Москве в Манеже должен был пройти финал международного командного студенческого чемпионата по программированию (ICPС) – аналог Олимпийских игр по информатике. Официальные языки программирования чемпионата – C++, Java, Python и Kotlin. И если первые три известны любому старшекласснику, то последний – только продвинутым специалистам. Чтобы стать в один ряд с классическими языками, новый должен обладать неоспоримыми преимуществами. Особый интерес к этому языку вызывает то, что он разработан компанией JetBrains, основанной нашими соотечественниками, недаром он назван в честь острова Котлин в Финском заливе, на котором расположен город Кронштадт. «Популярная механика» поговорила с CEO JetBrains Максимом Шафировым, бывшим тренером той самой легендарной питерской команды, которая привезла в россию первый кубок ICPС.
Основанная в 2000 году Сергеем Дмитриевым, Евгением Беляевым и Валентином Кипятковым компания JetBrains известна профессионалам прежде всего как производитель интегрированной среды разработки программного обеспечения IntelliJ IDEA, главного рабочего инструмента разработчиков ПО. Первую революцию в этой области произвела компания Borland в 1982 году, выпустив среду разработки Turbo Pascal, которая объединяла в себе текстовый редактор, отладчик и компилятор, что позволяло программистам работать не выходя из программы, многократно улучшая производительность и скорость написания кода. JetBrains привнесла в технологию много нового. Например, среда понимает код как связанный структурный объект, а не просто как текст. Первая технология, которая сделала JetBrains имя, – ренейминг, переименовывание символов. «Например, у вас есть метод, который называется X, и когда вы его называли X, вам было понятно, что вы хотели сказать, в голове была ассоциативная цепочка, – объясняет Максим Шафиров, – а вот через несколько лет смотрите на это и думаете, что надо было быть мудрее. А теперь уже ничего нельзя сделать, так как этот X уже используется в проекте тысячи раз. И это не единственный метод, который вы назвали X, и вы уже не можете текстовой подстановкой заменить X на что-то более понятное, потому что в разных контекстах X значит разные вещи. А в нашей среде вы сможете это легко сделать. Такое простое и базовое преобразование, но, как ни странно, одно из самых важных для повышения понимаемости кода. И таких преобразований в нашем продукте сотни, если не тысячи». И если изначально JetBrains разрабатывала свою интегрированную среду для Java-разработчиков, то сейчас есть варианты для всех популярных языков и платформ, которые бывают в современном мире разработки. И конечно, для Kotlin.
Котлин. Остров и язык
В 2010-м JetBrains решилась на довольно самонадеянный поступок – сделать идеальный язык программирования. Компании было тесновато с Java, язык развивался медленно, было видно, что концепции, придуманные еще в 1970-е годы, доехали до каких-то современных языков, а до Java – нет, а в JetBrains почти все писалось на Java. Поэтому появилась идея сделать для себя язык, в котором будет все хорошо.