Всем здраствуйте. Хочу заняться разработкой под Андроид. Перед тем как задам вопрос, скажу что я гуглил но вразумного ответа не нашел, точнее были искать нужно было на анлийском, а так как у меня с ним пока не очень я не разобрался. Так вот видел что уже можно писать под Андроид на Golang, но если следовать вакансиям, то там толко Java и сопуствующее с ней. Так вот вопрос что учить дабы потом найти работу? Full/freelance не важно. Заранее благодарен.
Можете dlang.org попробовать. Куда более удобный язык чем Go, и не тянет никакую VM как Java. Правда под Андроид пока писать сложновато т.к. примеров очень мало.
Максим Чернятевич тоже самое про Go можно сказать. Только у D есть целая куча преимуществ которых нет у Go. Go не простой, он примитивный. На больших проектах его примитивизм будет просто мешать. D единственный язык который позволяет с C++ линковаться. Да и перезод на D по опыту занимает 3-4 недели и вы уже пишете очень простой и быстрый код
Максим Чернятевич: да в том то и дело, что на D тоже самое, что и на Go пишется куда быстрее и проще. У меня на него как минимум 3 человека из ближнего круга общения перешло. Причем вообще без заморочек. Так что можно брать любого человека и через пару недель изучения он сможет уже решение дописывать.
Меньшее количество специалистов компенсируется простотой языка и более низким порогом вхождения.
тоже самое про Go можно сказать. Только у D есть целая куча преимуществ которых нет у Go. Go не простой, он примитивный. На больших проектах его примитивизм будет просто мешать. D единственный язык который позволяет с C++ линковаться. Да и перезод на D по опыту занимает 3-4 недели и вы уже пишете очень простой и быстрый код
Да ты че?
На Go на 99,9% работает Dropbox, на нем сделаны Kubernetes, Docker. Вовсю используется в Cloudflare, Google и пр. и пр.
А вам - вакансий мало?
Вы работали вообще на реально больших проектах?
На больших проектах нормальные руководители проектов запрещают писать заумным образом и требуют именно примитивизма.
Для интеграции программистов между собой (code review, взаимозаменямость, понимание общих библиотек) - это дает экономию времени.
Интеграция с С++? Чтобы бороться с утечками памяти да с миллионом несовместимых стандартов и компиляторов? Иногда интеграция с С++ очень нужна, но я бы не считал её прямо такой важной положительной особенностью. Только для поддержки legacy.
cijiw: >На Go на 99,9% работает Dropbox
Да?)) Гарантируешь?
>На больших проектах нормальные руководители проектов запрещают писать заумным образом
Ну это ты про Go где приходится простыню городить чтобы какие-то банальные вещи сделать так?
beduin01:
Про Dropbox - гарантирую. devzen.ru/episode-0095
Слава работает в Dropbox.
У них там буквально пара сервисов на Rust, в виде эксперимента.
Есть Python из унаследованого.
Основная часть - Go.
D - там нет. От слова "вообще".
Я работал с огромным проектом на PHP (один из полусотни разработчиков в компании), и не представляю его даже на экосистемах Python или Ruby. А писать такое на Node.js или Go - это просто самоубийство.
Кстати, запрещались любые оптимизации кода, которые шли во вред читаемости ;)
Огромный функционал языка программирования не означает, что этот язык круче.
Яву вон тоже упростили до Скалы.
beduin01: Низкий уровень как правило не программируют.
Редко-редко появляется задачка, когда нужен этот низкий уровень.
Его прекрасно делают на C, к примеру.
beduin01: Вы не задумывались - а почему собственно огромные системы существуют с Python, Java, PHP и т.п.? Хотя в те годы уже существовал и был развит С++, к примеру.
Типичный прикладной программист должен решить задачу здесь и сейчас.
Его время стоит дороже, чем все эти оптимизации.
На низкий уровень спускаются крайне редко - только когда нет другого выхода.
Всегда стараются его обойти.
Даже тогда, когда абстракция ухудшает производительность. https://habrahabr.ru/post/269589/#comment_8630315
Потому что в конечном итоге это выгодно: выгоднее запустить сервис раньше и платить больше за сервера, чем запустить его позже.
beduin01, указатели в Go есть.
Было бы неплохо, если бы вы потрудились разобраться в том, что пишете.
А D - уже сдох. Смысла им заниматься на сегодня нет никакого.
Зачем нужен язык по которому исчезающе мало вакансий?
оже самое про Go можно сказать. Только у D есть целая куча преимуществ которых нет у Go.
То, что на D никто не пишет, а на Go пишут уйма контор.
Лучшим бы доказательством кроме гипотетического совершенства языка - был бы размер его экосистемы.
Вы можете указать какие серьезные вещи сделаны на D. Не одиночные проекты энтузиастов D а нормальная серьезная поставленная на поток практика использования D?
Языку с управлением памяти укзатели как телеге пятое колесо.
Но так то у Go есть и & и * - неожиданно, хорошо понятные любому программисту, знающему С/С++
Для особо жестких случаев, когда нужно отключить управлением памятью - используется uintptr и пр.