LINUX.ORG.RU
ФорумTalks

Что лучше учить?

 ,


2

2

Паттерны проектирования с риском вывихнуть мозг от шаблонов абсратной фабрики синглтонов, или нормальную библиотеку например qt в которой уже все написано (гуи, сеть, СУБД и т.д.) и грубо говоря «можно петь не зная нот», как в караоке.

С чисто практической точки зрения без лишних холиваров типа о пользе высшего образования.

Перемещено leave из development



Последнее исправление: cetjs2 (всего исправлений: 1)

Ответ на: комментарий от monk

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

Что мешает иметь устройство с месяцем автономной работы, которое можно носить с собой и записывать туда что нужно? При получении доступа к серверу - синхронизироваться.

Дай отгадаю: просто, 1С такого не умеет.

byko3y ★★★★
()
Ответ на: комментарий от WitcherGeralt

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

Так главное же умный вид и уверенность, а не навыки. Я вот такой из себя весь неуверенный, не могу даже толком решиться уехать работать в штаты, хотя, у меня иногда возникает мысль, что я мог бы сделать хорошую карьеру в кодинге. Но не сделал же. А уверенное в себе «одноклеточное хомячье» пробивается, зарабатывает поболее меня, пусть и не умеет толком писать код. У меня на работе два ведущих кодера (по разным направлениям) - вполне себе неадекваты, которые регулярно применяют приемы и шаблоны не к месту, зато толкают других за собой, типа «я знаю, куда мы идем» - ну и толку с того, что я пишу код лучше них? Некоторые вообще писать код не умеют, и, тем не менее, хорошо поднимаются тупо за счет уверенности и умного вида. Вон, посмотри на Жириновского - человек вообще не умеют кодить, зато сможет научить тебя за пять минут владению в совершенстве всеми приемами программирования.

Потому так и пиши: про MV* говорят уверенные и успешные люди, способные добиться всего в жизни. Или, может, ты завидуешь?

byko3y ★★★★
()
Ответ на: комментарий от byko3y

У меня такой проблемы нет, только я делаю наоборот, когда неадекваты делают херню, я прихожу и с умным видом объясняю почему это дичь и херня. Не то, чтобы я имел с этого такой-то особенный профит, но по крайней мере это сходит мне с рук. Ну и неадекваты всё таки в основном обламываются.

WitcherGeralt ★★
()
Ответ на: комментарий от WitcherGeralt

я прихожу и с умным видом объясняю почему это дичь и херня

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

byko3y ★★★★
()
Ответ на: комментарий от byko3y

На текущий момент, братан, ценится не умение что-то делать, а умение трахать мозги. Чем сильнее затрахаешь моск своему начальнику — тем сильнее продвинешься. А если будешь работать — будешь работать. Вот и всё, собственно.

anonymous
()
Ответ на: комментарий от Nervous

Да СОЛИД — это для детишек и мака, которым всё разжевать надо. Реальный программтст и так понимает, что бардак ему самому потом выгребать и типо это не будет работой, а протиранием штанов.

anonymous
()
Ответ на: комментарий от Nervous

Убери классы из языка, и SOLID ... потеряют смысл.

L — может быть. Все остальное — вряд ли.

Single responsibility principle
A class should only have a single responsibility, that is, only changes to one part of the software's specification should be able to affect the specification of the class.

Имеет очень много смысла без классов.

Open–closed principle
«Software entities ... should be open for extension, but closed for modification.»

Тут, да, сложно возразить. Правда, тезис абстрактный, вроде «за мир во всём мире».

Liskov substitution principle
«Objects in a program should be replaceable with instances of their subtypes without altering the correctness of that program.» See also design by contract.

Что такое «подтип»? Ну ты понял.

Interface segregation principle
«Many client-specific interfaces are better than one general-purpose interface.»

В крайнем своем выражении значит «имей одну функцию в каждом интерфейсе» - нивелирует смысл класса.

Dependency inversion principle[10]
One should «depend upon abstractions, [not] concretions.

Можно перефразировать как „не используйте классы в качестве зависимостей“. Как бы это не запрещает классы в целом, а только в отдельной сфере.

byko3y ★★★★
()

петь не зная нот

Вот кстати. Певец спел, рот закрыл — и на этом его миссия закончена. А накодяченное без руля и без ветрил нужно будет как-то собрать в кучку и заставить работать. А потом ещё как-то исправлять и дорабатывать. И все это будет не очень просто сделать %)

Nervous ★★★★★
()
Ответ на: комментарий от anonymous

На текущий момент, братан, ценится не умение что-то делать, а умение трахать мозги. Чем сильнее затрахаешь моск своему начальнику — тем сильнее продвинешься. А если будешь работать — будешь работать. Вот и всё, собственно.

Я ж об этом и пишу. Я это вижу, я это видел давно, и я терпеть не могу такой организации процесса. Но другой планеты нам не завезли.

byko3y ★★★★
()
Ответ на: комментарий от anonymous

На текущий момент, братан, ценится не умение что-то делать, а умение трахать мозги. Чем сильнее затрахаешь моск своему начальнику — тем сильнее продвинешься. А если будешь работать — будешь работать. Вот и всё, собственно.

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

byko3y ★★★★
()
Ответ на: комментарий от byko3y

[SRP] Имеет очень много смысла без классов

Замени класс на структуру данных или функцию — смысл останется тот же.

[OCP] за мир во всём мире

За написание нового без разламывания старого.

С LSP все понятно.

[ISP] нивелирует смысл класса.

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

[DIP] Можно перефразировать как „не используйте классы в качестве зависимостей“

Используйте абстракции (abstractions), а не конкретные вещи (concretions) как зависимости. Наличию/отсутствию классов строго параллельно.

А если станет интересно, почему это все так — ещё и в GRASP придётся заглянуть. И классы тут совершенно побоку.

Nervous ★★★★★
()
Последнее исправление: Nervous (всего исправлений: 2)
Ответ на: комментарий от byko3y

В качалочку дуй сначала, если ЧСВ не поднимется, экзогенного теста вколи, пенисами коллег только в путь начнёшь обкладывать.

WitcherGeralt ★★
()

Что лучше учить?

Во времена моего детства советовали учить олбанский. А ещё советуют учить матчасть.

te111011010
()
Ответ на: комментарий от Nervous

Замени класс на структуру данных или функцию — смысл останется тот же.

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

За написание нового без разламывания старого.

Да, только в реальности это не работает, как и «мир во всём мире». Так-то есть более широкий принцип: работает - не трогай.

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

Всегда можно найти, почему две функции в интерфейсе - это чрезмерное нагромождение, потому нужно разделить функции на два интерфейса. В итоге мы приходим к вопросу «а зачем вообще мы делали таблицы функций?». И в куче языков этого вопроса вообще нету.

Используйте абстракции (abstractions), а не конкретные вещи (concretions) как зависимости. Наличию/отсутствию классов строго параллельно.

Что такое абстракции, реализации, и зависимости по-твоему? Мне просто интересно узнать хотя бы одну модель из не класс-ориентированого софта, где применимы эти понятия вместе с принципом.

byko3y ★★★★
()
Ответ на: комментарий от WitcherGeralt

В качалочку дуй сначала, если ЧСВ не поднимется, экзогенного теста вколи, пенисами коллег только в путь начнёшь обкладывать.

К сожалению, определение «смазливый мальчик, которому я бы вдул» - это не про меня. Я еще с молодости был здоровой волосатой макакой. А физ нагрузками регулярно занимаюсь так-то. Проблема, наоборот, в том, что я способен на взрывную агрессию, только после окончания которой начинаю думать и жалеть. По моим наблюдениям, ЧСВ-нарциссу не обязательно быть тестостероновой макакой.

byko3y ★★★★
()

Как еще один фреймворк избавит тебя от необходимости знать основные паттерны и приемы проектирования?

Makhno
()

Liz812 не обижайтесь на форумчан за их комменты в отношении вас.
Виноваты в этом вы сами, так как очень развязно себя повели.
«Что посеешь, то и пожнешь».

anonymous
()
Ответ на: комментарий от monk

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

Morin ★★★★
()
Ответ на: комментарий от byko3y

В простых структурах данных и функциях этот принцип сам по себе выполняется.

Вот не сказал бы. В самопальных базах данных и даже сишных структурах нарушение SRP наблюдаю сплошь и рядом. Когда в одной таблице уживаются описание объекта, его использование в какой-то подсистеме и его связи. Например, «ФизическоеЛицо» с «ФИО», «ПоследняяПродажа» и «Должность».

В функциях тоже. save_form() с отображением изменений на экране и записью в базу — классический пример.

Всегда можно найти, почему две функции в интерфейсе - это чрезмерное нагромождение, потому нужно разделить функции на два интерфейса.

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

Мне просто интересно узнать хотя бы одну модель из не класс-ориентированого софта, где применимы эти понятия вместе с принципом.

«Всё есть файл» (с).

monk ★★★★★
()
Последнее исправление: monk (всего исправлений: 1)
Ответ на: комментарий от byko3y

Что мешает иметь устройство с месяцем автономной работы, которое можно носить с собой и записывать туда что нужно? При получении доступа к серверу - синхронизироваться.

А зачем, если есть устройство не неограниченным сроком автономной работы, возможностью производить до пары сотен съёмных носителей информации и стоимостью на два порядка меньше, чем «устройство с месяцем автономной работы»?

Дай отгадаю: просто, 1С такого не умеет.

Умеет: https://infostart.ru/public/543999/

Только для этой задачи это как «лопата с моторчиком» из анекдота.

monk ★★★★★
()
Ответ на: комментарий от monk

Вот что меня удивляет, то что архитектурный подход фирмы 1С /хороший/ другие фирмы не используют в своих разработках.
Ведь все «просто» и гениально.
Создаем сотню наиболее востребованных объектов и разрабатываем скриптовый язык, который может их использовать.

anonymous
()
Ответ на: комментарий от Morin

Можно. Только нужна либо квалифицированная подпись (есть не у всех), либо надо, чтобы директор контрагента явился лично, чтобы можно было выдать ему свою подпись для идентификации.

А печать организации и подпись директора на бумаге есть у всех.

остальной бред про сварщика в пустыне гоби, починяющего примус

Ну так фантастика, в которой у каждого сотрудника организации есть мобильное устройство с токеном, в реальной жизни крайне редко встречается. У нас такие прожектёры пытались электрикам электронные планшеты выдать. Теперь планшеты лежат у диспетчера, а электрики в конце дня переписывают с бумажки в планшет. Потому что планшеты бьются и занимают намного больше места, чем карандаш и бумажка.

monk ★★★★★
()
Ответ на: комментарий от anonymous

Создаем сотню наиболее востребованных объектов и разрабатываем скриптовый язык, который может их использовать.

Qt, QtScript?

monk ★★★★★
()
Ответ на: комментарий от anonymous

Самое главное то не упомянул - наличие метадата базы.

anonymous
()
Ответ на: комментарий от monk

Конечно у QT потенциал больше, чем у 1С, но:
- 1C не требует компиляции модулей;
- 1С много упрощает разработку кода и о многих «мелочах» программисту не нужно заботиться;
- ...

По совокупности всего имеем - отличную rapid технологию.

anonymous
()
Ответ на: комментарий от anonymous

- 1C не требует компиляции модулей;

Ну... как бы требует. Внутри они хранятся в байткоде. А «применить изменения конфигурации» от make по времени несильно отличается.

- 1С много упрощает разработку кода и о многих «мелочах» программисту не нужно заботиться;

Именно с точки зрения языка с QtScript или JavaScript вполне сравнимо.

Если брать именно БД, то я действительно удивлён, что 1С-ные понятия «проведения», «регистра накопления» и «регистра сведений» не прижились снаружи её. Как в ООП есть паттерны GoF, так для БД прикладные объекты закрывают почти все паттерны использования таблиц.

monk ★★★★★
()
Ответ на: комментарий от no-such-file

Как разовую акцию ещё можно было бы понять, но методично месяцами изображать блондинку

До метапрога далеко ещё. Хотя, его, почему-то не банили.

seiken ★★★★★
()
Ответ на: комментарий от monk

Если брать именно БД, то я действительно удивлён, что 1С-ные понятия «проведения», «регистра накопления» и «регистра сведений» не прижились снаружи её. Как в ООП есть паттерны GoF, так для БД прикладные объекты закрывают почти все паттерны использования таблиц.

Обобщим.
Хотелось бы в C++ иметь аналог /для начала/ объектов 1С 8.x, а не template-s с реализацией - ПРИВЕТ С 60-х.

anonymous
()
Ответ на: комментарий от WitcherGeralt

Объедки для толстячков, не умеющих в контент.

kekelia
()
Ответ на: комментарий от anonymous

Хотелось бы в C++ иметь аналог /для начала/ объектов 1С 8.x, а не template-s с реализацией - ПРИВЕТ С 60-х.

Собственно это и есть основное «поле» моих «колес».

anonymous
()
Ответ на: комментарий от anonymous

Вот только не надо. Меня тут в черном теле держат. Не ожидала, что лоровцы такие недружелюбные.

Liz812
() автор топика
Ответ на: комментарий от Liz812

Меня тут в черном теле держат. Не ожидала, что лоровцы такие недружелюбные.

Ну пошлятина то от вас первой пошла.

anonymous
()
Ответ на: комментарий от anonymous

Какая пошлятина? Повторяю, что забанили меня совершенно не за что. Я даже лично написала 2 модераторам с просьбой разобраться. Один вообще не ответил, а второй сказал, что все сообщения удалены и он доказать ничего не может.

Liz812
() автор топика
Ответ на: комментарий от anonymous

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

anonymous
()
Ответ на: комментарий от Liz812

Повторяю, что забанили меня совершенно не за что.

За что вас забанили не знаю, но пошлость в этом треде от вас первой была.

anonymous
()
Ответ на: комментарий от anonymous

Шутка.

Поэтому на ЛОР женщинам лучше вести себя так - «Я Маруся дурочка, не ругайте меня.»

anonymous
()
Ответ на: комментарий от anonymous

Неоднократно замечал в форумах: если один участник обсуждения выдаёт себя за женщину, то среди других участников обсуждения находятся желающие делать тонкие намёки, что она дура.

Но эта тема бессмысленная, как и её обсуждение тут, поэтому по её существу высказываться неохота.

Partisan ★★★★
()
Ответ на: комментарий от Partisan

о среди других участников обсуждения находятся желающие делать тонкие намёки, что она дура.

В отношении женщин «тонкие намеки», а среди мужчин - сами знаете как.
Вообще то переходы на личности это «гадость еще та».

anonymous
()
Ответ на: комментарий от rupert

Хороший тред. Пойду возьму ещё попкорна.

Хорошая мысль!
«Сщас спою».

anonymous
()
Ответ на: комментарий от no-such-file

кащенка бы бабой оказался

Да еще пенсионеркой ...

anonymous
()
Ответ на: комментарий от no-such-file

Вот это мне тоже непонятно.

Ответ прост - форум «с глупостями» лучше «мертвого форума».
Вот новый «metaprog».
И документация у них не плохая, ... и на хабре статьи.
Но честно скажу - «Не могу понять, чем хорош этот велосипед».
https://forum.mista.ru/index.php?section=lsfusion

anonymous
()
Ответ на: комментарий от Liz812

Он не по баны, а про сексизм. С банами реально неадекват какой-то зашкаливающий. Но вахтёры тут в принципе не самые адекватные, нормальные люди таким заниматься не будут, так что ничего особенного.

WitcherGeralt ★★
()

можно петь не зная нот

Говорят, что Паваротти пел не зная нот.

anonymous
()
Ответ на: комментарий от anonymous

Ответ прост - форум «с глупостями» лучше «мертвого форума».

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

Вот новый «metaprog».

Мне эта идея визуального программирования была малоинтересна с самого первого поста метапрога.

seiken ★★★★★
()

Родной и английский языки. И не «учить», а изучать.

Hertz ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.