The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Увидел свет язык программирования Go 1.4

11.12.2014 21:16

Компания Google представила релиз языка программирования Go 1.4, который позиционируется как гибридное решение, сочетающее высокую производительность компилируемых языков с такими достоинствами скриптовых языков, как лёгкость написания кода, быстрота разработки и защищённость от ошибок. Код проекта распространяется под лицензией BSD.

Синтаксис Go базируется на привычных элементах языка Си с отдельными заимствованиями из языка Python. Язык достаточно лаконичен, но при этом код легко читается и воспринимается. Код на языке Go компилируется в обособленные бинарные исполняемые файлы, выполняемые нативно без использования виртуальной машины (модули профилирования, отладки и другие подсистемы выявления проблем на этапе выполнения интегрируются в виде runtime-компонентов), что позволяет добиться производительности, сопоставимой с программами на языке Си.

Проект изначально разрабатывается с оглядкой на многопоточное программирование и эффективную работу на многоядерных системах, в том числе предоставляя реализованные на уровне операторов средства для организации параллельных вычислений и взаимодействия между параллельно выполняемыми методами. Язык также предоставляет встроенные средства защиты от выхода за допустимые области выделенных блоков памяти и обеспечивает возможность использования сборщика мусора.

Основные новшества, представленные в выпуске Go 1.4:

  • Реализована официальная поддержка разработки приложений для платформы Android. Для подобных приложений можно использовать как штатные библиотеки, так и библиотеки из отдельного репозитория для мобильных систем, но библиотечные средства для мобильных приложений пока находятся в состоянии активной разработки и оставляют желать лучшего. Исполняемые файлы для Android пока могут генерироваться только для архитектуры ARM;
  • Поддержка организации работы циклов for-range без определения параметров сохранения текущего значения ("for range x {" в дополнение к "for i := range x {" и "for i, v := range x {"), что может быть востребовано в случаях, когда необходимо лишь прокрутить цикл для всех элементов набора, но сами элементы не представляют интереса.
  • В команду go добавлена новая подкоманда "generate", позволяющая автоматизировать запуск инструментов для генерации исходных текстов до начала компиляции. Например, таким способом можно сгенерировать методы объекта String для типизированных констант, воспользовавшись утилитой stringer;
  • Поддержка генерации исполняемых файлов для окружения Native Client (NaCl), работающего на системах с процессорами ARM. NaCl позволяет организовать выполнение не заслуживающего доверия кода в sandbox-окружении, изолированном от остальной системы. Ранее поддержка была ограничена только генерация платформозависимых файлов для 32- и 64-разрядных процессоров Intel;
  • Поддержка сборки исполняемых файлов для операционной системы Plan 9 на процессорах с архитектурой AMD64;
  • Большинство runtime-компонентов, таких как сборщик мусора, обработчики строковых операций и код для организации распараллеливания, переписаны с языка Си на язык Go. В сборщике мусора появилась возможность сканирования стека программы во время её исполнения, точной оценки степени использования переменных и полного контроля за местоположением активных указателей, что сказалось на сокращении использования памяти в куче на 10%-30%. С точки зрения производительности немного ускорена сборка мусора и скорость выполнения приложений за счёт внесения дополнительных оптимизаций при выполнении операций развёртывания кода (inlining). Значительные оптимизации ожидаются в следующем выпуске.


  1. Главная ссылка к новости (http://blog.golang.org/go1.4...)
  2. OpenNews: Выпуск языка программирования Dart 1.7, развиваемого Google для замены JavaScript
  3. OpenNews: Компания Red Hat представила язык программирования Ceylon 1.1.0
  4. OpenNews: В кодовую базу LLVM приняты биндинги для языка Go
  5. OpenNews: Язык программирования Go переходит с Mercurial на Git и GitHub
  6. OpenNews: Выпуск языка программирования Rust 0.12, развиваемого проектом Mozilla
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/41248-golang
Ключевые слова: golang
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (67) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Вася лодочник (?), 22:26, 11/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    >Большинство runtime-компонентов, таких как сборщик мусора, ..., переписаны с языка Си на язык Go

    Мы переписали сборщик мусора на Go, чтобы ты мог собирать мусор, когда  ты собираешь мусор.

     
     
  • 2.4, Аноним (-), 22:33, 11/12/2014 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Я убью тебя, лодочник!(С)
    Ты вряд ли слышал, но твой папа любил под _это_ пивка хряпнуть :)

    На самом деле есть и светлая сторона вопроса. По крайней мере это так же означает что:
    - экзамен на взрослость язык скоро пройдёт (bootstraping);
    - сборка по всякую экзотику упростится шо мама не горюй и Go таки всунут в каждую кофеварку;
    - сборшик мусора - это 100% системный софт. И уже доказанно что жто можно делать на самом Go;

    Вощем перспективы правильные. Молодца дед Пайк!!! Старая школа!
    ( Это вам не полу-3.14-р потцеринг :)

     
     
  • 3.20, Аноним (-), 00:33, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • –4 +/
    к сожалению, НИ ОДИН из развиваемой радужно-голубой корпорацией зла, Языков Программирования - не тянет на.
    или к счастью, впрочем. как и остальные их "продукты и сервисы".
     
     
  • 4.41, BratSinot (ok), 17:10, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • –5 +/
    Да сколько уже можно повторять, что Google никакого отношения к языку Go не имеет.
     
     
  • 5.48, Аноним (-), 19:52, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    для почитать, сравнить:
    https://ru.wikipedia.org/wiki/Go!
    https://ru.wikipedia.org/wiki/Go

     
  • 3.51, Вася лодочник (?), 23:46, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    >Ты вряд ли слышал, но твой папа любил под _это_ пивка хряпнуть :)

    Сынок, ты знаешь о чем эта песня? Пивка хряпнуть, ага.

     
     
  • 4.53, anonimouse (?), 03:53, 13/12/2014 [^] [^^] [^^^] [ответить]  
  • –4 +/
    А то! Я под неё твою маму ... пивом хряпал :)
     

  • 1.2, Аноним (-), 22:27, 11/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    >Реализована официальная поддержка разработки приложений для платформы Android
    >Поддержка генерации исполняемых файлов для окружения Native Client (NaCl), работающего на системах с процессорами ARM

    Вот оно чего Михалыч ... неужто хотят попки жабаскрптерам порвать? Я б затонейтил :)

     
     
  • 2.11, Аноним (-), 23:58, 11/12/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Задонайти гуглу, а то пропадут
     
     
  • 3.13, Аноним (-), 00:03, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Если гугол таки порвёт что озвучено куму озвученно - прощу им все их грехи! :-Р
     
     
  • 4.17, Crazy Alex (ok), 00:19, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Таки да, за убийство JS  в веб-приложениях (хотя бы в больших) и замену на хоть как-то вменяемый язык много что простить можно. Но вряд ли, учитывая, что NaCl вряд ли появится в других браузерах
     
     
  • 5.21, Аноним (-), 00:48, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Ну ... значит не будет других браузеров ! :-\

    Ой! Чего это я? Я же _добрый_ фей :)

     
     
  • 6.26, тоже Аноним (ok), 09:00, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +2 +/
    В цитате пропущен добродушный безумный хохот.
     

  • 1.3, Аноним (-), 22:29, 11/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > позиционируется как гибридное решение, сочетающее высокую производительность компилируемых языков с такими достоинствами скриптовых языков, как лёгкость написания кода, быстрота разработки и защищённость от ошибок

    Защищенность от всех ошибок? Если нет, то надо бы уточнить от каких.

     
     
  • 2.5, Аноним (-), 22:35, 11/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > Защищенность от всех ошибок? Если нет, то надо бы уточнить от каких.

    Кому надо - и так в теме. Кто дурак ... от дурака хорошо помогает АК, но он отчего то в комплекте отсутствует :(


     
  • 2.19, index0h (ok), 00:29, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > Защищенность от всех ошибок? Если нет, то надо бы уточнить от каких.

    Прослойку между компом и стулом - не исправляет)). У большинства скриптовых языков часто в рантайме возникают проблемы  из за несоответствия типов, Go в этом плане позволяет работать чрезвычайно гибко за счет утиных интерфейсов, или жесткого указания типов. В случае чего компилятор просто вылетит с ошибкой, у скриптовых же языков все это происходит в рантайме

     
     
  • 3.28, Аноним (-), 09:32, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Хочешь погуляем вместе?^^
     
  • 3.34, Аноним (-), 12:28, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > У большинства скриптовых языков часто в рантайме возникают проблемы  из за несоответствия типов

    Но ведь в новости написано, что достоинством именно динамических языков является "защита от ошибок", а Go эти достоинства, согласно тексту новости, заимствует.

     
     
  • 4.54, index0h (ok), 06:26, 13/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > Но ведь в новости написано, что достоинством именно динамических языков является "защита от ошибок", а Go эти достоинства, согласно тексту новости, заимствует.

    В новости действительно этот нюанс не совсем корректно подан.

     

  • 1.6, Аноним (-), 23:22, 11/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +9 +/
    Rust, по тестам, в среднем в 2.5 раза быстрее Гугловского Го:

    http://benchmarksgame.alioth.debian.org/u32/compare.php?lang=rust&lang2=go

    Они в новых релизах проблемой скорости будут уделять внимание-то??
    RUST начиная с 2015 года, официально стабилизировался и будут уже гораздо привлекательнее!

     
     
  • 2.7, Аноним (-), 23:34, 11/12/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >>С точки зрения производительности немного ускорена сборка мусора и скорость выполнения >>приложений за счёт внесения дополнительных оптимизаций при выполнении операций >>развёртывания кода (inlining). Значительные оптимизации ожидаются в следующем выпуске.

    Хочется надеется что по скорости он будет как минимум на равных с RUST, обвязка у Гугла конечно хорошая уже, различные библиотеки уже успели появиться, фрейморки комьюнити создает.

    Но и у Моззилы есть огромная армия поклонников в коммьюнити, так что Гугл сейчас должен активнее шевелиться... эй Гугл надеюсь ты читаешь это!?!))

     
     
  • 3.15, Аноним (-), 00:16, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • –3 +/
    > Но и у Моззилы есть огромная армия поклонников в коммьюнити

    Оно и видно. На go уже написана куча всяких околосистемных приблуд. А на Rust пишут сами мозиловцы. И то только какой-то servo, который даром никому кроме его авторов не упал.

    У гугла есть секретное оружие - они пиариться умеют. При том грамотно и адресно. Зря они чтоли контекстной рекламой зарабатывают?

    А мозильщики в последнее время умеют:
    1) жевать сопли
    2) страдать фигней.
    3) срочно передирать архитектуру и оформление хромиума.

     
     
  • 4.24, Аноним (-), 02:20, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +2 +/
    servo - samsung.

    библиотеки есть, но факт что все будут работать с версией 1.0 которая должна выйти в начале 2015года.

    по поводу того что делает мозилла, - это не ИП с 1человеком, есть разные отделы, и Руст пилится очень активно. Он не предназначен для домохозяеек, поэтому дизайнеры не при делах, а пиарить будут тех-евангелисты. Уж что-что а ЯваСкрипт они вывели на орбиту и сечас его не догнать.

     
     
  • 5.49, тоже Аноним (ok), 20:14, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > а ЯваСкрипт они вывели на орбиту

    Примерно так же, как Россия вывела на орбиту первый спутник.

     
     
  • 6.65, Куяврег (?), 13:54, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вообще-то СССР. Но евродундукам типа тебя без разницы
     
  • 2.9, vn971 (ok), 23:50, 11/12/2014 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Мне тоже нравится Rust. Скорость, безопасность, генерики и многое другое -- рулят.

    Но всё-таки, некорректно употреблять прошедшее время о 2015-ом годе, находясь в 2014-ом...)

     
     
  • 3.22, Аноним (-), 01:24, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +2 +/
    писать на русском языке сложнее чем Go,Rustе)))
     
  • 2.12, LU (?), 00:00, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Привлекательнее в чём?
     
  • 2.14, Аноним (-), 00:13, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    А уж tcl какой нить - рвёт как тузик грелку Только одна проблема ржавчина - эт... большой текст свёрнут, показать
     
     
  • 3.18, Crazy Alex (ok), 00:23, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +3 +/
    У D две проблемы - его слишком долго крутили и меняли, и за ним долго почти никого не было. За Rust побольше народу, но калечат его пока не хуже.

    А, да - надо понимать, что D - это именно плюсы, сделанные правильно. От сложностей, связанных с их кривостью, его подлечили, а вот сложность by design - чтобы удобно и эффективно было писать именно сложное - в нём осталась. В этом плане Go,  с его примитивностью, имеет огромное преимущество перед D и несколько меньшее - перед Rust.

     
  • 3.23, Аноним (-), 01:37, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    я согласен что сравнение RUST и GO не совсем корректное, но это два наиболее трендовых языка последнего времени, за спинами которых стоят известные комманды/компании...

    По поводу сравнения с плюсами, в среденем по различным тестам идут почти вровень

     
  • 2.33, SpiritOfStallman (ok), 11:37, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +3 +/
    >Rust, по тестам, в среднем в 2.5 раза быстрее Гугловского Го

    А Go (стабильный) мы используем в продакшене, в среднем, уже года полтора-два.
    Ощущаешь, как твои бенчмарки приносят тебе деньги? Пробовал делать что-то бизнесовое на расте?

     
     
  • 3.35, Аноним (-), 12:32, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    А чего делаете на нём, если не секрет? какие либы используете?
     
     
  • 4.37, SpiritOfStallman (ok), 13:16, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > А чего делаете на нём, если не секрет?

    Некоторые части вэба. И достаточно всяко разных серверных приложений на внутренние задачи.

    > какие либы используете?

    Пару либ с горилки (gorilla (http://www.gorillatoolkit.org/)) для вебчика, и свои обвязки вокруг оных (по типу этого https://github.com/SpiritOfStallman/attar). Ql (https://github.com/cznic/ql) как embedded database.

    Для остального хватает внутренней библиотеки.

     
     
  • 5.57, Аноним (-), 15:20, 13/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    А какую IDE используете для разработки на Go? Какие может быть самые удобные?
     
     
  • 6.62, SpiritOfStallman (ok), 23:35, 13/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > А какую IDE используете для разработки на Go? Какие может быть самые
    > удобные?

    Объективно полноценной ide под него нету.
    Но ближе всего к этому подобралась LiteIDE, которую к тому же очень активно пилят(https://github.com/visualfc/liteide). Её и пользуем.
    PS: сам я любитель вима-для-всего, но для go мне он показался не удобным (что бы без тонны левых плагинов, которые работают через пень-колоду; и что бы комфортно с gofmt и прочими плюшками).

     
     
  • 7.64, Аноним (-), 02:37, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    ну что-ж спасибо за инФу, попробуем гоу.
     
  • 2.55, index0h (ok), 06:35, 13/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Эмс... мне жаль вас расстраивать, но Rust сейчас как бы есть, но его нет)) Когда появится версия 1.4 Rust, с сообществом как у Go, когда появятся флагманские проекты, аля Docker, CoreOS, InfluxDB,.. тогда стоит делать такой вброс. Если вам критична производительность - Pure C/ASM в помощь. Go под свою целевую нишу - идеален.

    Прошу прощения за оффтоп, но это напоминает старые холивары в стиле:
    - php - какуля
    - почему?
    - медленный и демоны писать хреново
    - ок, но php решает другие целевые задачи
    - вот видишь, по этому он ***

     
     
  • 3.56, Аноним (-), 12:32, 13/12/2014 [^] [^^] [^^^] [ответить]  
  • –1 +/
    ох-ты не знал что Docker на Go написан.
     
     
  • 4.59, anonimouse (?), 20:03, 13/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Да в этой самой модной ныне теме (контейнеры) проще перечислить что написано _не_ на Go :)
     
     
  • 5.67, index0h (ok), 00:29, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Да в этой самой модной ныне теме (контейнеры) проще перечислить что написано
    > _не_ на Go :)

    Это правда, но docker сделал этот подход более user-friendly. Программное решение - это не сферически конь в вакууме, ваш код (на любом языке) может быть идеальным, он может быть той серебряной пулей, которой нет, он может работать на самых экзотически системах, но пока у вас нету хоть какого-то сообщества, на нашей планете всего один человек, которому нужен этот код)) Так же и тут: да, есть LXC, тема не нова и бла-бла-бла. Собственно это ничего не меняет, есть docker со своим сообществом и есть другие с сообществами по меньше в много раз.

    Для примера тот же nodejs: идея в js на сервере не новая уже over-дофига лет, но тут появился Раян и решил портировать V8 под сервер, а так же добился признания и большого сообщества.

     

  • 1.8, Аноним (-), 23:43, 11/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Кстати прочитал анонс релиза на оригинале и не нашел там вот про это ничего
    >>Значительные оптимизации ожидаются в следующем выпуске.

    где или на основании какой инфы автор перевода/поста сделал этот вывод?

     
     
  • 2.10, A.Stahl (ok), 23:52, 11/12/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Лакмусовая бумага жёлтого цвета.
     
  • 2.16, Аноним (-), 00:19, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Кстати прочитал анонс релиза на оригинале и не нашел там вот про
    > это ничего
    >>>Значительные оптимизации ожидаются в следующем выпуске.
    > где или на основании какой инфы автор перевода/поста сделал этот вывод?

    Да не - было! И про 1.5 ... а сейчас нет? Или я уже бухой или подчистили 8-о

     
  • 2.25, Аноним (-), 06:12, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    >где или на основании какой инфы автор перевода/поста сделал этот вывод?

    в 1.5 запилят конкурентный GC вместо нынешнего stop-the-world, благодаря чему горутины перестанут зависать так, как они зависают сейчас. (сейчас приходится вручную вызывать в коде runtime.GC())

     

  • 1.27, Аноним (-), 09:14, 12/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Народ, подскажите, плз, сначала GO ил Java лучше учить?
     
     
  • 2.29, Аноним (-), 10:19, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    assember
     
     
  • 3.30, Аноним (-), 10:34, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Начинать буду с того, что легче.
     
  • 2.31, Nixman (?), 10:57, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    C.
     
  • 2.36, via (??), 12:47, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Для себя - golang. Для хорошей работы java.
     
     
  • 3.38, Andrey Mitrofanov (?), 14:26, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Для себя - golang. Для хорошей работы java.

    """A new competitor seemed to emerge out of the woodwork every month or so. [...I would...] look at their job listings. After a couple years of this I could tell which companies to worry about and which not to. [...] The safest kind were the ones that wanted Oracle experience. You never had to worry about those. You were also safe if they said they wanted C++ or Java developers. If they wanted Perl or Python programmers, that would be a bit frightening-- that's starting to sound like a company where the technical side, at least, is run by real hackers. If I had ever seen a job posting looking for Lisp hackers, I would have been really worried.

    --http://paulgraham.com/avg.html
    ++По площадям бей, по площадям.

     
  • 3.42, Аноним (-), 17:23, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Пошёл ты :) Что ты гонишь такое?
     
  • 3.60, Аноним (-), 20:13, 13/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Go в среднем сравним с Java по скорости, при этом памяти требует в два раза меньше для тех же задач + кода для тех же задач в два раза меньше писать надо, - единсвенная фича JAVA стабильность, есть и у C.
     
     
  • 4.66, Артем (??), 21:46, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А как же переносимость? Куча библиотек и фреймворков? Существующие паттерны? Лёгкость поиска разработчиков? Альтернативные языки и JVM? Вездесущесть?

    Под десктоп я бы на Java писать не стал, а server-side в плане толстых продуктов пока не доверил бы go.

     
  • 2.39, Genry Tomasino (?), 15:13, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Для начала нужно изучить следующие дисциплины:
    * матан;
    * линал;
    * комплан;
    * функан;
    * диффгем;
    * теория чисел;
    * дифуры/интуры/урчпы/вариационное исчисление/оптимальное управление;
    * производящие функции;
    * ряды;
    * комбинаторика;
    * теорвер/матстат/слупы/теория массового обслуживания;
    * цепи Маркова;
    * интегральные преобразования;
    * дискретная математика;
    * численные методы.
     
     
  • 3.40, Аноним (-), 15:45, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >[оверквотинг удален]
    >* теория чисел;
    >* дифуры/интуры/урчпы/вариационное исчисление/оптимальное управление;
    >* производящие функции;
    >* ряды;
    >* комбинаторика;
    >* теорвер/матстат/слупы/теория массового обслуживания;
    >* цепи Маркова;
    >* интегральные преобразования;
    >* дискретная математика;
    >* численные методы.

    после нужно почитать Кнута

     
     
  • 4.43, тоже Аноним (ok), 17:27, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +7 +/
    И уже после этого провалить собеседование на PHP-джуниора. По возрасту.
     
  • 3.45, vn971 (ok), 18:39, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    ... И ни одной темы не упомянуто по классическому "computer science".
    Надеюсь, вы занимались не перечислением просто того что сами лично прошли?..

    Из тем которые по факту пригождаются лично мне в IT:
    * структуры данных (хэшмэпы, бинарные деревья, линкованные списки и т.д.)
    * классы сложностей алгоритмов (P/NP/EXPTIME/EXPSPACE/..)

    Для проверки знаний понимать как устроена машина Тьюринга, доказать эквивалентность двух-головочной и одно-головочной машин Тьюринга, уметь доказывать задачи на -hard и -complete классы сложности.
    А вообще, если действительно за это браться, то просто найти подходящий учебник по CS и идти по нему.

     
     
  • 4.46, vn971 (ok), 18:55, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Замечу, впрочем, что я лично > 2/3 из перечисленной выше математики прошёл. Может быть если бы не прошёл -- и не далась бы CS. Не знаю.
    Математика обычно достаточно интересна чтобы изучать её саму по себе. И она заслуженно имеет репутацию предмета после которого легко погружаешься в очень многие другие. А cs слишком молода чтобы про неё такое утверждать (кажется).
     
  • 4.52, Аноним (-), 03:01, 13/12/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    "и т.д."

    Чего и т.д. то? Что конкретно? А то уже тонны всего, не знаешь что и учить даже.

     
     
  • 5.63, vn971 (ok), 00:34, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Наугад из тем которые были мне интересны:

    * immutable структуры со сложностью взятия элемента элемента по индексу log(N) и сложностью замены элемента по индексу log(N). Под "заменой" элемента имеется в виду создание новой "структуры", в которой этот один элемент "заменён". Понятно ли объяснил? оО

    * immutable hash map в том же смысле немутируемости как выше, и со сложностью извлечения/вставки log(N)  (среднее).

    * DHT. Distrubuted hash table -- может быть это частично счесть за структуру данных. И это однозначно очень интересно!

    * Красно-чёрные деревья?

    Модель акторов это вроде не структура данных. А жаль, хорошая штука :D  Но не в тему, ок.

     
  • 2.58, index0h (ok), 17:19, 13/12/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    У Go очень низкий порог вхождения, так что проще будет начать с него.
     

  • 1.32, CSRedRat (ok), 11:30, 12/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ого! Plan9 снова в тренде!
     
  • 1.44, Аноним (-), 17:34, 12/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Вы ребята намереваетесь сделать GO в своих осях тем языком, место которго занимает C# в Виндах?
    Ну и, учитывая тенденцию развития и применения веб технологий в ОС сегодня, можно также и Dart+HTML5 запихать в оси вместо JS+HTML5.
     
     
  • 2.50, Аноним (-), 23:40, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Проще новый язык сделать, чем вытянуть эти.
     

  • 1.61, Аноним (-), 21:28, 13/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Кто-нибудь из присутсвующих в треде использовал Go вместе с OracleDB(11.2)?
    что используете для подключения, пакет/модуль какой?
     
  • 1.68, Нимо Ан (?), 00:20, 19/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Кто-нибудь может внятно объяснить зачем нужен этот язык? Пробовал начинать изучать - показалось, что полная хрень как ни крути. Вот есть C, есть C++, ObjectiveC, Vala, Rust, Haskell, JavaScript, Java, Scala, PHP, Perl, Python, Ruby, многочисленные диалекты LISP, и вот по всем ним, в общем-то понятно что это, зачем и как на этом строить программы, а на Go смотришь и недоумеваешь что это вообще за прикол.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру