214 похожих чатов

Где можно взять задачи на тренинг паттернов проектирования, как с

алгоритмами?
или ток самому темы проектов придумывать и там уже реализовывать?

8 ответов

4 просмотра

Паттерны лучше всего будет разбирать всё-таки на реальных задачах. Какова ситуация: паттерны это, с одной стороны, очевидные вещи, а с другой – если бы все использовали нужный паттерн в нужный момент (а не нужные не использовали), то и изучать их не нужно было бы (все и так всё знали бы). Из этого следует вывод, что есть фактор, который мешает понять очевидные темы, поднимаемые в этих паттернах. Этот фактор – опыт. Пока ты не столкнулся с достаточным количеством похожих проблем, ты, даже почитав паттерн и разобрав примеры его использования, можешь либо вообще его не понять, либо понять не до конца и/или неправильно. Так что самый простой способ изучения паттернов – пилить проект, максимально похожий на реальный (а лучше сразу реальный) и, время от времени, проходиться по списку популярных паттернов и перечитывать их (постепенно будешь замечать, что в них описаны те же костыли, что ты писал, но они выглядят чуть лучше). + паттерны это, во многих случаях, чистое инфоциганство. Те же принципы SOLID собраны в кучу не потому, что они как-то связаны, и не потому, что это топ5 принципов, которые нужно знать что бы быть альфасамцом на районе, а просто потому, что складываются в пиздатый акроним. Так что тут тоже нужно быть осторожным.

satma
Паттерны лучше всего будет разбирать всё-таки на р...

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

satma
К паттернам стоит относиться больше как к формализ...

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

satma
К паттернам стоит относиться больше как к формализ...

Я с этим согласен больше Только когда начнешь писать код на опыте сможешь прочухать какой паттерн юзать и нужен ли он там вообще

Kirill Prokopev
паттерны это никакие не формализованные идеи, они ...

>паттерны это никакие не формализованные идеи, они существуют без синтеза в принципе. Это философский вопрос. Примерно как существует ли математика без человека, или человек её выдумал.

Алексей Соловьев
>паттерны это никакие не формализованные идеи, они...

Отнюдь Сколько бы ты не старался, ты не сможешь придумать

Так я, вроде, и не говорил, что их нужно учить

Похожие вопросы

Обсуждают сегодня

type TObj = object procedure Init; virtual; end; TObj1 = object(TObj) procedure Init; override; end; procedure TObj1.Init; begin inherited; end; procedur...
Alexander 👋
29
Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
45
А чем вам питонисты не угодили?😂
.
79
Язык Си можно выучить за день? По книжке ANSI C на 230 страниц
Vincent Vegan
29
Hello. Could you please help me with finding all coordinates within a radius using a spatial index, given that I have a table with coordinates? SET @lng = 37.57925; SET @lat ...
Rinchin G
7
Господа и дамы, поможите пожалуйста :( Запускаю notepad.exe из делфи CreateProcess(nil, PChar(FullPath), nil, nil, False, NORMAL_PRIORITY_CLASS, nil, nil, StartInfo, ProcessI...
Ivan Burnatov
7
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
75
I wrote frontend in flutter using dart. Where should I write backend?
𝐌𝐚𝐫𝐲
8
А че SwiftUI for Web ещё нет?
Shagit Ziganshin
7
Не получается у меня либу Zstd статически слинковать, вылазят какие-то AV Вроде example у них не сложный есть, вроде всё делаю как там... но не выходит чего-то Вопрос - если ...
notme
4
Карта сайта