Как стать автором
Обновить
1
0

Программист

Отправить сообщение

 Что такое вообще осознание? Это модель самого себя в своём мозгу.

Каким образом модель может давать осознание?
Неужели программа играющая в шахматы, осознает доску?

Так вроде toLocal8Bit создает в куче новый QByteArray, почему он должен уничтожаться?

break / continue : о, да!

Особенно с учетом мультипарадигменности языка.

Хоть перечисления в третьей скале добавили. Но похоже, все загнется из-за нового "пиши как угодно" синтаксиса.

Они в C++ раньше Java появились. И как бы интерфейс без возможности сокрытия данных и методов в наше время уже считается не совсем полноценным.

приватные методы неполноценны

Это полностью объектно-ориентированный язык

Не вводите людей в заблуждение!

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

Вот по количествам строк кода Rust и С++ как раз не сильно отличаются, я смотрел исходники различных растовых библиотек, о краткости и лаконичности там и говорить не приходится.

Им обоим до Kotlin, например, далеко.

Простой аналог

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

А в Rust зато ООП нет.

на С++ уже займет под 500 строк кода.

да вы если поднатужитесь, то и на 5000 напишете, я уверен )

на С++ придется городить иерархию классов-интерфейсов

На шаблонах и union можно сделать, и вообще много вариантов.

Во первых, фич в C++ гораздо меньше чем, например, в Scala. Это по поводу неуемного добавления фич.

Во вторых, синтаксис C++ проще вырвиглазного синтаксиса Rust, и становиться только проще со временем начиная с 11 стандарта (всякие auto, новый for, ламбды и.т.д.). Вы просто путаете синтаксис и возможность выстрелить себе в ногу. Да, в Rust гораздо сложнее это сделать, но он и менее гибок.

В третьих вы пишете ерунду по поводу 99% ПО, ибо все мало мальски серьезные десктопные приложения пишутся на C++. Тулзы, браузеры, 3д софт, графические редакторы, видеоредакторы, музыкальные студии, игры и.т.д. Даже тот же Firefox состоит лишь на 9% из Rust, по моему это фиаско для языка, стабильная версия которого вышла в 2015 году.

И на мобилках все серьезные игрушки понятное дело, кроссплатформенные и во многих случаях написаны на C++. Так что язык не маргинализировался, он остается на своем месте, и будет всегда там оставаться. Просто разрослись веб и мобильные сегменты, до невероятных размеров, а C++ прекрасно чувствует себя в своей нише.

Бреслав как-то говорил что он не понимает многих возможностей Scala, скорее всего, он не очень любит и не использует на полную катушку ФП. Как и другие в его команде, наверно. Но они очень субъективны, когда говорят что это «Мало кому нужно». Они говорят про себя, про свой уровень. В Scala и Rust есть расширенный паттерн матчинг с деструктуризацией, уж наверно люди что его включили в эти языки, не худшие специалисты чем Бреслав с командой. Ну а Kotlin язык приятный, но выглядит как калька со Scala, во многом урезанная, ну и многое добавлено, конечно.
У вас ошибка в примере, нужно:
println(new Stack().push("hello").push(new Object()).push(7))

Это же не Case классы.
Понятно, что опыт у всех разный. Но можете простой пример борьбы с типами? И вот этих всех сложных связей между ними?
Похоже на тонкий троллинг.
Автор утверждает что у него есть сертификаты Microsoft (и не один).
Это как минимум означает, что человек умеет работать с информацией (в том числе разбирается, где нужное — а где лишнее),
и умеет искать информацию.

Он говорит что «прочитав гору статей и просмотрев кучу видео «Как стать Java программистом»», он не смог разобраться более продвинутой книге
«Философия Java», мол, она не для новичков.
Парадокс в том, что после усвоения «горы статей» и «кучи видео», (и, разумеется практики, не зря же он себе IDE поставил), он перестал бы быть новичком.
Если конечно, голова на плечах есть, а она есть, если у него есть сертификаты MCP, MCSA и VCP.
Так что что-то не сходится.
По сравнению с чем «очень зажористые»? Много частиц — это сколько? Сто миллионов? А если билбордами (спрайтами) делать, а не трехмерными объектами? Как раз частицы будут гораздо быстрее работать, чем если реализовывать все это через скрипты.
Всегда удивляюсь, когда говорят о строгости и лаконичности питона.
Может, я чего не понимаю?

Вот пример использования Apache Spark, на Python и Scala:

Python:
text_file = sc.textFile("hdfs://...")
counts = text_file.flatMap(lambda line: line.split(" ")) \
             .map(lambda word: (word, 1)) \
             .reduceByKey(lambda a, b: a + b)
counts.saveAsTextFile("hdfs://...")


Scala:
val textFile = sc.textFile("hdfs://...")
val counts = textFile.flatMap(line => line.split(" "))
                 .map(word => (word, 1))
                 .reduceByKey(_ + _)
counts.saveAsTextFile("hdfs://...")


Что лаконичней?
В Python не устали писать «lambda» каждый раз, и ставить "\" в конце строки? Зачем это?
В scala лишнее слово Val перед переменной означает ее объявление и также то, что ее значение не может измениться в будущем.
(Издержки статической типизации, но это позволяет ускорить выполнение программ и предупреждать ошибки, по сравнению с питоном)

Далее вопросы к синтаксису:
for key in d:
    d[key].sort()


В чем тайный смысл двоеточия, если по идее, должно быть достаточно отступов для формирования блоков кода?
Тоже и с оператором IF.
(Кто нибудь может сказать, что это для того, что бы писать операторы в той же строке, но часто вы в питоне такое видели? )

Далее идут классы.
class Some:
	def __init__(self, id):
		self.id=id


Мы что, на C++ пишем? Зачем двойные подчеркивания в языке высокого уровня?
«def init» никак не прошло бы? Давайте тогда и класс через "__class" объявлять, почему так не сделали?

Ну и напоследок о скорости питона.
Он до 50 раз медленнее scala.
Он значительно медленнее PHP, Javascript. Epic fail.
Скорость выполнения задач обспечивается библиотеками, написаными на C.
И не говорите о PyPy — это не стандатный питон.

Выводы:
Крайне медленный и весьма многословный язык, малоэстетичный.
Если его позиции пошатнутся, всем это только пойдет на пользу. (ИМХО, разумеется)
> Да, С++ быстрее. А ассемблер еще быстрее.

На самом деле, не всегда.
Хороший компилятор С++ (Visual C, GCC) обычно генерирует код лучше, чем если писать вручную.
Плюс может использовать SSE/AVX инструкции.
IL2CPP в Unity пробовали?

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Зарегистрирован
Активность