Иаков
А как ты узнаешь архитектуру не освоив на практике? НУ почитаешь, что есть такая хрень.
Ну, поч. Можно взять любой яп, который учится. И арзитектуру учить, как уже основы япа выучены, когда проектов много сделано. Потом архитектура. Ну и что, что первый питон. Я сам с питона начинал, потом js, потом шарп, он мне показался проще первых двух. Само собой, после него другие япы не кажутся проблемой. Но я новичок в кодинге, всего год. Не работал, немного метаюсь. Узнал про паттерны некоторые, чистую Архитектуру, слоеная архитектура ркшений которая. Понравилось, как код от этого выглядит красиво. Есть деление на слои. Но такое и в js и питоне сделать можно. В чем проблема?
Warox
У меня не получалось, и я просто зарёкся работать с такими. Для меня проще нету знания Си — ищите нового. Опыт негативный.
Так тебе нужны знания си Или понимания как конкретный язык на котором пишется проект работает с памятью/потоками?) 🤔🤔 Мне кажеться проще спросить то что нужно а не навешиваться ярлыки - не учил си значит тупой 😄
Andrii
Коробка автомат это абстракция
Dima
А причём тут зависимости?
простой пример программист работает с устройством вывода пишет код для отображения информации на мониторе если писать код на уровне реализации, то код будет зависим от монитора при подключении проектора (для вывода информации) придется переписывать часть программы. если писать код на уровне абстракции, то работая с абстрактными данными мы сможем описать интерфейс вывода информации и подключать монитор, проектор и т.д.
Иаков
Моя точка зрения такова. Си простой как веник, его выучить легко, быстро, даёт понимание базовых архитектурных вещей (память, процессы), после чего изучение других ЯП будет эффективнее в разы. Когда я изучаю другие языки, то мне надо лишь понять, как это будет компилироваться в сиподобный код, это даёт возможность ухватить самую суть, а не запоминать как мартышка налево пойдёшь будут такие грабли, направо — такие грабли. Запомните дети, слова сол, мат пишуться с мягким знаком, а слова вилька, тарелька без мягкого знака. ЗАпомните это дети, потому что понять это нывазможно. Вот понимание архитектуры и делает это возможным. С другой стороны это часто маркер, получится ли вообще быть программистом. Если ты не можешь выучить Си, то ... не знаю, не уверен в перспективах. А когда ты изучаешь любой другой язык, да ещё большой фреймвёрк, то можно полгода осваивать IDE, чёто-то делать, и только потом будет понимание, что программировать ты так и не научися, и это не твоё.
Сам Немчинский говорил: сначала направление, потом яп. Не нужно в основы основ лезть. Он говорил, что когда чел учил джаву, подумал, пойду учить плюсы, чтоб разобраться с джвм, потом с, потом до ассемблера дошел. Сказал, что это не очень, потому что это... Ну, когда ты хочешь делать сайты - ты их делаешь! Я почти год учил синтаксис шарпа, чтоб только потом месяц бэкэнд попробовать. Итого - я кинул идею заниматься бэкэнда, потому что от него не штырит
Andrii
Ну после си любой язык уж точно кажеться как глаток свежого воздуха 😄
Ну... не совсем так, я вот с плюсов даунгрейдился на чистый Си, и в общем-то мне приятнее Си, чем C#, Java и иже с ними. Там ничего страшного особо нету.
Иаков
У меня 30+ лет опыта, в принципе можно и так, но мне представляется это менее эффективно и всё. Получается много пробелов, которые иногда приводят к граблям. И после чего другие ЯП не кажутся проблемой, после шарпа? Хм...
30 лет, неплохо. Вообще, вы говорили про си. Скорее всего, вы имеете в виду, computer science, это все можно выучить потом, разобраться с этим. Но не тогда, когда новичок пробует кодить, ищет себя. Нужен сперва кайф же
Andrii
30 лет, неплохо. Вообще, вы говорили про си. Скорее всего, вы имеете в виду, computer science, это все можно выучить потом, разобраться с этим. Но не тогда, когда новичок пробует кодить, ищет себя. Нужен сперва кайф же
Зачем CS? Так как раз Си особо не нужен :) В принципе у меня как раз задумка, надо которой я работаю, как раз дать Си, основы Linux, а дальше чтобы человек выбирал куда: Python, Golang, Rust, Haskell, ...
Иаков
Немчинский курсы продаёт, вот и хвалит что лучше расходится. Я его послушал, много дискуссионного.
Да не только он. Но если вам так нравится, то удачи в следующей жизни учить сначала си)) если, кнчн, там не будет какого-нить с######## (8 * 4 плюсов)
Andrii
Ну ты олдскул Когда вышли джава и с# у тебя уже было 6-10 лет стажа.
Да, и я радостно изучал C#, читал Рихтера, думал что это новое слово... Если бы я сегодняшний мог дать себе совет в прошлое, то он был бы скорее: переходи на Linux, не влазь в это дерьмо :) С позиции сегодняшнего дня, я считаю, что это только помешало моему развитию.
Andrii
ответьте мне :(
CS он вообще отдельно, так математика больше
Andrii
Получается, у вас упор на бэкэнд, да?) в таком случае
У меня сейчас networking, а я вообще я пишу многое.
Dima
CS он вообще отдельно, так математика больше
я имел ввиду последнее сообщение про абстракцию хд
Иаков
Andrii
я имел ввиду последнее сообщение про абстракцию хд
Абстракция в программировании это сокрытие деталей реализации за некоторым междумордием (в общем понимании). Дыры в абстракции это когда детали реализации выпирают наружу. Например, строки в C# это абстракция на указателями и памятью
Dima
Абстракция в программировании это сокрытие деталей реализации за некоторым междумордием (в общем понимании). Дыры в абстракции это когда детали реализации выпирают наружу. Например, строки в C# это абстракция на указателями и памятью
я это понимаю все :D не мог мысль сформулировать, спасибо что насчет питона, там нет интерфейсов каким образом в таких ЯП достигается абстракция? в том же Си, например?
Иаков
Окей
Andrii
Да что не так с си решёткой. У него есть нет кор, кроссплатформенная разработка
Просто не моё, плюс разрабатывает проприетарная компания. Там все проекты достаточно скучные, привязаные к IDE и т. п. Но главный минус для меня в том, что форсился симула-лайк ООП, что я считаю достаточно опасным
Andrii
В Си есть FILE * например, дескрипторы (которое простое число с таблице), ...
Dima
Ну, там, вроде, можно писать абстрактный класс, разве нет?
наверное я не пишу на питоне, опять же если там присутствует множественное наследование в таком случае ок
Andrii
Python всё-таки утиный полиморфизм, а не симула-лайк.
Иаков
А зачем ООП? Как по мне, алгебраическая теория типов на порядок лучше (Rust, Haskell)
Не знаю. Я не пробовал эту алгебраическую типов и понятия не имею, как оно работает. Скорее всего, это фп, да? А ооп довольно красиво выглядит, логично. Есть обьект, есть другой обьект, есть какая-то абстракция, которая объединяет эти два объекта, интерфейс.
Иаков
Наследование, полиморфизм, что-то переопределить, инкапсуляция, скрыть какие-то вещи, которые не должны быть доступны.
Warox
У тебя опыт на с# в каких годах был? Может мы о разных с# говорим
Andrii
Не знаю. Я не пробовал эту алгебраическую типов и понятия не имею, как оно работает. Скорее всего, это фп, да? А ооп довольно красиво выглядит, логично. Есть обьект, есть другой обьект, есть какая-то абстракция, которая объединяет эти два объекта, интерфейс.
Мой опыт говорит, что самые плохие архитектуры что я видел были там, где юзалось симула-лайк ООП. Проблема в том, что требования меняются, и архитектура не очень хорошо масштабируется под них. Нет, алгебраическая теория типов это не ФП, хотя часто используется в ФП. Но это просто правила построения новых типов из имеющихся
Шаман Каган
Andrii и VIM https://youtu.be/9n1dtmzqnCU
Andrii
У тебя опыт на с# в каких годах был? Может мы о разных с# говорим
Последний опыт сейчас, но был с первой версии. Взять какой-нить notepad++ и набирать там C# код много боли, потому что язык спроектирован так, что без всяких автодополнений со стороны IDE работать не сильно удобно.
Иаков
Andrii и VIM https://youtu.be/9n1dtmzqnCU
О, вим классная штука. Уже 6 урок закончил вимтутора, использую вим эмулятор в вс коде, чувствую себя кайфово
Andrii
Наследование, полиморфизм, что-то переопределить, инкапсуляция, скрыть какие-то вещи, которые не должны быть доступны.
Ну... наследования реалиации, например, не стали делать в Golang тоже по причине стрёмности. И ещё 15 лет назад я слышал точку зрения, что наследование надо запретить :)
Иаков
Как без подсказки методов обьектов справляться? Не все же можно упомнить. А так, у обьекта точку поставил и видишь все доступные его параметры
Warox
Почему хотели наследование запретить?
Что бы учить меньше было студентам 🙂
Andrii
Ок, Понял в каком ты ключе. Да без какой то ИДЕ плохо. Но в каком языке хорошо?
В том же Си, ну и Haskell, .. Вопроc IDE больше в том, что она уже настроена так, как посчитали нужны разрабы, м перестроить под себя... сложна... А vim надо долго настраивать под такие языки, в отличие от других
Иаков
Что бы учить меньше было студентам 🙂
Ахахаха. Ну, я студент колледжа, но мы там ооп даже и не изучали. Никто не знает про полиморфизм, наследование, инкапсуляцию
Anonymous
$ `jar --help' > > > > > 1 > 2 > 3 > 4 >
Andrii
Почему хотели наследование запретить?
Потому что когда требования неясны, то часто наследование строится неправильно, потом обрастает костылями и становится головной болью.
Anonymous
Как выйти ??????? Help
Warox
В том же Си, ну и Haskell, .. Вопроc IDE больше в том, что она уже настроена так, как посчитали нужны разрабы, м перестроить под себя... сложна... А vim надо долго настраивать под такие языки, в отличие от других
Да как без идее жить? Вот подключил ты новую либу. Ты сразу выучил все названия функций автоматически? Автокомплишн вообще мастхев + краткое описание что делает каждая функция с доков.
Andrii
А что насчет java? И что насчет фронтендеров и js?
Я не знаю, я 30+ лет избегал Java. Frontend тоже не моё совсем.
Иаков
Я не знаю, я 30+ лет избегал Java. Frontend тоже не моё совсем.
А, вы любите низкоуровневое и абстракции?
Andrii
А, вы любите низкоуровневое и абстракции?
Нет, почему? Как по мне Python неплох, что требует перформанса, пишем на Си, что нет, на Python. Мне нравится Haskell, но это явно не низкоуровневая абстракция
Andrii
Зависимые типы, которые я сейчас изучаю (Idris, Agda) ну явно не низкий уровень :)
Иаков
Нет, почему? Как по мне Python неплох, что требует перформанса, пишем на Си, что нет, на Python. Мне нравится Haskell, но это явно не низкоуровневая абстракция
Ну, вы за 30 лет определились, что вам нравится. А я за год полюбил ооп. Может быть, понравится и фп. Хотя, во фронте на реакте используется фп.
Andrii
Опять же, часто языки поставляют разный инструментарий командной строки, который можно заюзать для того, чтобы получать что тебе надо.
Andrii
Ну, вы за 30 лет определились, что вам нравится. А я за год полюбил ооп. Может быть, понравится и фп. Хотя, во фронте на реакте используется фп.
Мне многое что нравится, я не однолюб. Просто инструмент зависит от задачи. Мне кайфово кодить на Python, на C, на Haskell, на Idris. Возможно Rust, в планах почитать про верификацию C кода с помощью CoQ
Andrii
Мне нравится изучать что-то новое, интересное, какие-то подходы...
Иаков
Мне многое что нравится, я не однолюб. Просто инструмент зависит от задачи. Мне кайфово кодить на Python, на C, на Haskell, на Idris. Возможно Rust, в планах почитать про верификацию C кода с помощью CoQ
Хм, получается, я могу заниматься и бэком и фронтом и мобилкой. Кстати, а если, допустим, я хочу мобилку, потому что там кодинг будет получше, нежели во фронте, но в моем городе вакансий на мобилку нет, а если есть, то только мидлы. Что делать?
Иаков
Я, вот, не хочу реакт нэйтив и флаттер, а хотел бы котлин, что-то близкое к шарпу, но и не ксамарин, кнчн же
Anonymous
Подскажите где я туплю!) мой алгоритм 1. Вот мы с GIT скачиваем файлы(ссылка) 2. Добавляем через git clone + cсылка 3. Потом переводим код в байт Для этого переходим в папку с файлами .java находясь в этой папке с файлами .java ввожу команду javac -d bin -encoding UTF-8*.java СЃ3аераетг@KOMP MINGW64 /c/Users/с3аераетг/Desktop/dev/m1-t6-decoder/src $ javac -d bin -encoding UTF-8*.java error: no source files
Anonymous
Изменил
Anonymous
ошибка в код
Andrii
Хм, получается, я могу заниматься и бэком и фронтом и мобилкой. Кстати, а если, допустим, я хочу мобилку, потому что там кодинг будет получше, нежели во фронте, но в моем городе вакансий на мобилку нет, а если есть, то только мидлы. Что делать?
Мне сложно понять такую мотивацию :) Я учил программирование потому что оно приносило удовольствие, близкое к половому. Мне говорили, что я потеряю зрение за монитором. Я оставался на ночь на ВЦ только чтобы решать свои задачи. А первая з/п была $20, и тогда роста з/п не было. Истинным Исполинам Духа деньги приятный бонус. Ваканчии это дело такое, сейчас у меня все предложения remote.