Как научиться проектировать ПО? — Хабр Q&A

Главным инструментом проектирования
программного обеспечения является мозг
человека, хорошо знакомого с принципами
проектирования. Это не технология.

© Крейг Ларман

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

Ответ написан

Комментировать

Проектирование приложений можно условно разбить на 2 уровня:
1. Уровень проекта.
Сюда входит понимание того, как приложение должно выглядеть в целом и из каких компонентов состоять, а также по каким принципам оно собирается взаимодействовать с внешним миром (если есть такая необходимость).

Компоненты зависят от выбранной архитектуры — в случае монолитного приложения вам требуется понимать, как разбивать его на слои и в чем ответственность каждого слоя; в случае микросервисов вы также должны понимать, как очерчивать зоны ответственности и определять протоколы взаимодействия между ними.
В вашем случае я думаю вряд ли микросервисы будут актуальны (они для больших проектов), поэтому у вас скорее всего будут небольшие монолитные приложения.
Книги о том, как проектировать приложения на общем уровне:
1. Роберт Мартин. Чистая архитектура — очень короткая и простая книга, рекомендую начать с неё.
2. Эрик Эванс. Предметно-ориентированное проектирование (принципы + стратегические шаблоны).
3. Мартин Фаулер. Архитектура корпоративных приложений (часть 1).

Уровень 2. Уровень модулей (классов).
Когда вы спроектировали компоненты, из которых состоит ваше приложение, теперь надо спроектировать их внутренности — то есть разбить на более мелкие и конкретные модули. Тут вам пригодятся принципы объектно-ориентированное проектирования, принципы SOLID, паттерны.
Книги по уровню 2.
1. Банда четырех. Приёмы объектно-ориентированного проектирования. Паттерны проектирования. Тут важно не только сами паттерны, но принципы, по которым они строятся. Концентрируйтесь на принципах.

2. Роберт Мартин. Принципы, паттерны и методики гибкой разработки на языке C#. Тут более подробно рассматривается объектно-ориентированный дизайн и принципы SOLID в сравнении с его «Чистой архитектурой».
3. Эрик Эванс. Предметно-ориентированное проектирование (тактические шаблоны).
4. Мартин Фаулер. Архитектура корпоративных приложений (часть 2).
5. Стивен Макконел. Совершенный код (сконцентрируйтесь на понимании Главного Технического Императива!).

Этих книг вам будет достаточно, чтобы ориентироваться в проектировании приложений, всё остальное решает практика. Рисуйте схемы, концентрируйтесь на ответственности компонентов и их интерфейсах, учитесь отбрасывать ненужные детали реализации.

Ответ написан

может подойдут книги типа

Agile оценка и планирование проектов, Кон Майк — 2018
Постигая Agile. Ценности, принципы, методологии, Э.Стеллман, Д.Грин — 2018

Ответ написан

более трёх лет назад

Комментировать

Для этого надо немного:
1. Запороть проект, а может и не один, чтобы понять, что не ведёт к решению.
2. Извернуться ужом, но найти решение, когда никто не может решить проблему, чтобы научиться рассчитывать только на свои силы и не верить остальным, что чего-то сделать нельзя.
3. Научиться иметь чёткое видение решения, чтобы знать, на каком этапе вы находитесь, когда решаете задачу.

Ответ написан

более трёх лет назад

Комментировать

Может здесь что то будет полезно https://github.com/dimaxz/Lectures?files=1

Ответ написан

Обучение проектированию без воды | Проектирование электроснабжения

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

Если статьи на блоге выходят редко, это не значит, что я не знаю о чем писать, просто времени на все не хватает. 220blog.ru  — это больше хобби, а не работа. Если бы 220blog.ru  был моей работой, то пользы от него, думаю, было бы значительно меньше, т.к. только при проектировании ты вникаешь во все детали и нюансы проектирования.

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

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

На одном из форумов я оставил такую фразу:

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

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

Наверняка вы подумаете, ну это бред, невозможно за 1 день научиться проектировать.

Сейчас вам покажу, какой смысл был заложен в эту фразу.

Во-первых, я не утверждал, что за 1 день можно научиться проектировать. Я написал, что «ПРАКТИЧЕСКИ ЗА ОДИН ДЕНЬ». Каждый из нас индивидуален. Кто-то быстро усваивает материл, кто-то чуть медленнее, кто-то обладает базовыми навыками проектирования, а кто-то и вовсе пришел в проектирование с другой профессии. Я, когда начинал проектировать, был полный ноль, поэтому научиться может каждый, если есть желание.

Если у вас нет опыта и знаний, то вряд ли вам сразу дадут проектировать какой-то завод. Для начала, возможно, вы начнете с частных домов или небольшого общественного здания, т.е. вы начнете с какого-то конкретного раздела, например, ЭМ, ЭО, ЭК и т.д. А ведь есть еще куча других разделов, которые выполняют проектировщики электроснабжения и, разумеется, все это освоить за один день не реально, но научиться проектировать кабельные сети либо частные дома за 1 день очень даже реально.

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

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

Давайте представим большой аквариум с рыбками. Вы рыбак, который ловит эту рыбу. Рыба – полезная для проектирования информация. Это могут быть и нормативные документы, и вспомогательная информация, и опыт, и программы для проектирования.

Пространство с информацией

Вот примерно так выглядит пространство с полезной информацией.

Много воды и очень мало действительно нужной информации.

Любую информацию каждый из нас способен найти и сам, только для этого кто-то потратит 5 минут, кто-то — 5 дней, а кому-то и вовсе придется пройти путь в 5 лет. Например, сейчас у меня в роботе проект ВЛП-10кВ. Я уже потратил кучу времени, чтобы найти правильный ответ по заземлению опор, хотя специалист мог бы мне объяснить все детали за несколько минут. Без опыта тяжело, т.к. некоторые нормы противоречат друг другу и только сделав несколько проектов у тебя все пазлы собираюсь в общую картинку.

Ваш путь к знаниям будет напоминать вот такую дорогу и без навигатора быстро добраться в нужную точку будет не так просто.

Поиск кратчайшего пути

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

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

Пространство с информацией без воды

Так и в проектировании, чем меньше воды нас окружает, тем быстрее можно выполнить проект. Вода — это препятствие между вопросом и ответом. В моих курсах по проектированию количество воды сведено к минимуму и, порой, некоторым хочется даже больше воды =)

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

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

Вам не нужно будет изучать все нормативные документы, вам нужно лишь прочитать отдельные пункты ТНПА, которые относятся только к конкретному разделу проектирования.

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

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

Вам не нужно думать, у кого проконсультироваться, на все вопросы отвечаю оперативно.

Вам не нужно думать, через сколько окупится курс, т.к. он окупается уже после первого выполненного проекта.   Например, один из последних проектов (2 КЛ-0,4кВ между жилыми домами)  я полностью оформил за пару часов и заработал 5000 р. (75$), обзор его также появится в ближайшее время в курсе ЭК. Это минимальная цена на подобные проекты. Более сложные проекты стоят и по 30000 р.

Мои курсы по проектированию электроснабжения:

  • Практический курс проектирования кабельных сетей 0,4/10кВ – All Inclusive».
  • Практический курс проектирования частного жилья «All Inclusive».

Хочешь быть в проектировании, как рыба в воде?

Советую почитать:

Про схемы АВР, про ошибки

Бесплатное обучение для проектировщиков

Проектирование ВЛ, КЛ, КТП, ДГУ, ЭН, ЭМО, ЭГ в одном объекте

#15 Расстояние между трубами в земле

Вы можете пролистать до конца и оставить комментарий. Уведомления сейчас отключены.

Как стать дизайнером, не посещая школу дизайна — Karen X Cheng

Я получила работу дизайнера, не посещая школу дизайна. Я собрал свое собственное дизайнерское образование за 6 месяцев, работая полный рабочий день. Я не думал, что готов, но все равно начал искать работу — и получил работу в отличном стартапе Exec.

Чтобы было ясно, я далеко не так хорош, как те дизайнерские вундеркинды, которые выходят из 4-летнего обучения в элитной школе, такой как RISD. Но я определенно достаточно хорош, чтобы делать свою работу хорошо. Я единственный дизайнер в Exec, поэтому я занимаюсь довольно широким кругом задач — визуальным и интерактивным дизайном, печатью, веб-дизайном и дизайном мобильных приложений.

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

Это руководство для самостоятельного обучения дизайну.

Обновление: я впервые опубликовал этот пост в блоге более года назад. С тех пор я получил сотни писем с просьбами о дополнительных рекомендациях и более простых шагах, и наконец нашел одно:  Designlab . Этого курса не было, когда я учился, но, черт возьми, я бы хотел, чтобы он был — это сделало бы весь процесс намного менее сложным. Что мне действительно нравится в нем, так это то, что он дает вам задания по проекту, а затем связывает вас с наставником по дизайну, который дает вам обратную связь (у них есть действительно хорошие люди, которые работают в Facebook).

Шаг 1. Научитесь видеть
Самая большая ошибка — слишком быстро прыгать в Photoshop. Изучение Photoshop не делает вас дизайнером, так же как покупка кистей не делает вас художником. Начните с фундамента.

Сначала научитесь рисовать.

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

  • Вам даже не нужно хорошо рисовать. Просто изучите некоторые основы, чтобы вам было удобно рисовать ручкой.

  • Вам нужно сделать только одну вещь, чтобы научиться рисовать: получить книгу «Вы можете рисовать за 30 дней» и заниматься по полчаса каждый день в течение месяца. Я просмотрел много книг по рисованию, и это одна из лучших.

Изучите теорию графического дизайна

  • Начните с книги Picture This. Это сборник рассказов о Красной Шапочке, но в то же время он научит вас основам графического дизайна.

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

  • Просматривайте несколько этих руководств каждый день.

Изучите некоторые основы взаимодействия с пользователем

  • Существует множество книг о взаимодействии с пользователем. Начните с этих двух кратких книг, которые помогут вам настроиться на правильный лад:

  • Дизайн повседневных вещей

  • Не заставляй меня думать!

Научитесь писать

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

  • Прочтите Made to Stick, одну из моих любимых книг всех времен. Это научит вас, как засасывать ваших читателей.

  • Voice and Tone — это веб-сайт, полный жемчужин хороших примеров письма.

Шаг 2. Научитесь пользоваться Photoshop и Illustrator
Ура! Теперь у вас есть довольно прочная основа — как визуальная, так и UX. Вы готовы изучать Photoshop. На самом деле, я рекомендую сначала начать с Illustrator, а затем перейти к Photoshop. Illustrator — это то, что дизайнеры используют для создания логотипов и иконок.

Изучите иллюстратор

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

  • Adobe Illustrator Classroom in a Book — это скучно, но если вы прочтете хотя бы половину, вы довольно хорошо разберетесь в Illustrator. .

  • Vector Basic Training – Эта книга научит вас создавать в Illustrator действительно хорошо выглядящие объекты.

  • А теперь самое интересное! Следуйте этим онлайн-руководствам и будьте впечатлены тем, что вы можете сделать. Вот два моих любимых — логотип и живописный пейзаж.

Изучение Photoshop

  • Существует миллион и один учебник. Многие из них дерьмо. К счастью, есть сайты с действительно качественными туториалами. PSDTuts от TutsPlus – один из них.

  • Вот хороший учебник по фотошопу для создания приложения для iPhone.

  • Вот еще один хороший учебник по фотошопу для создания макета веб-сайта.

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

Шаг 3. Изучите некоторые специальности
Хотите разрабатывать мобильные приложения? Веб-сайты? Инфографика? Изучите их все и выберите те, которые вам нравятся, чтобы стать лучше.

Изучите дизайн логотипа

  • Узнайте, как сделать логотип, который не будет отстойным: Logo Design Love

  • Однако вы захотите пойти дальше, чем логотип. Научитесь создавать устойчивый бренд — от веб-сайта до визитных карточек. Ознакомьтесь с этой книгой Разработка фирменного стиля.

Изучение дизайна мобильных приложений

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

  • Прочитайте эту короткую, но очень полную и продуманную книгу о дизайне iPhone: Tapworthy. Он научит вас, как сделать приложение, которое не только хорошо выглядит, но и простое в использовании.

  • Узнайте больше о приложениях на своем телефоне. Критикуйте их. Что работает, а что нет?

Изучение веб-дизайна

  • Прочтите «Не заставляйте меня думать», чтобы узнать, как создать веб-сайт, который будет простым в использовании и навигации.

  • Прочтите «Принципы красивого веб-дизайна», если хотите, чтобы веб-сайт выглядел красиво.

  • Составьте список веб-сайтов, которые, по вашему мнению, красиво оформлены. Обратите внимание, что у них общего.

Теперь каверзный вопрос о том, нужно ли вам знать HTML/CSS как дизайнеру: это зависит от работы. Знание этого определенно даст вам преимущество на рынке труда. Даже если вы не хотите быть веб-разработчиком, полезно знать некоторые основы. Так вы узнаете, что можно, а что нельзя.

Существует так много отличных ресурсов для изучения HTML и CSS:

  • Мой любимый бесплатный — Web Design Tuts.

  • Мой любимый платный (довольно доступный по цене 25 долларов в месяц) – Treehouse. Если вы начинаете с самого начала и хотите, чтобы кто-то объяснил все четко и всесторонне, не пожалейте денег на учебные пособия Treehouse.

Шаг 4. Создайте свое портфолио
Чтобы получить работу дизайнера, не нужно идти в модную школу дизайна. Но вам нужно солидное портфолио.

Как составить портфолио, если вы только начинаете? Хорошая новость заключается в том, что вам не нужно работать над реальными проектами с реальными клиентами, чтобы создать портфолио. Создавайте собственные сторонние проекты. Вот несколько идей:

  • Придумывайте глупые идеи для футболок.

  • Найдите сайты с плохим дизайном и переделайте их.

  • Есть идея для приложения для iPhone? Смоделируйте это.

  • Присоединяйтесь к команде Startup Weekend и станьте дизайнером проекта выходного дня.

  • Примите участие в 99 конкурсах дизайнеров, чтобы попрактиковаться в создании брифа.

  • Выполните упражнения по графическому дизайну из книги Творческая мастерская .

  • Найдите местную некоммерческую организацию и предложите дизайн бесплатно.

Не поддавайтесь искушению включить в свое портфолио все, что вы когда-либо создавали. Это место только для вашей сильнейшей работы.

Воровать, воровать, воровать сначала. Не беспокойтесь об оригинальности — это придет позже, когда вы освоитесь в своем ремесле. Когда вы учитесь играть на музыкальном инструменте, вы учитесь играть песни других людей, прежде чем сочинять свои собственные. То же самое касается дизайна. Воруй как художник.

Перейдите на Dribbble и получите вдохновение от лучших дизайнеров. Ознакомьтесь с pttrns для вдохновения для iOS и patterntap для вдохновения на веб-сайте.

Шаг 5: Устроиться на работу дизайнером
Когда я впервые начал изучать дизайн, я пошел на семинар по поиску работы для дизайнеров. Я вошел в комнату, полную дизайнеров, у которых было гораздо больше опыта, чем у меня — 5, 10, 15 лет опыта. Все они искали работу. Это было пугающе. Я пытался научиться дизайну, зная, что конкурирую с этими опытными дизайнерами.

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

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

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

Создайте личный веб-сайт и сделайте свое портфолио центральным элементом.

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

Исследуйте компании и агентства, которые могут вас заинтересовать. Найдите в LinkedIn связи 2-й и 3-й степени с людьми, которые работают в этих компаниях, и попросите представиться. Лучший способ устроиться на работу — через связи. Если у вас нет связи, вы можете многое сделать, чтобы получить преимущество.

Получив работу, продолжайте учиться
Я работаю в Exec уже год и многому научился на работе. Я ищу дизайнеров, которые намного талантливее меня, и учусь у них. Я нахожу курсы дизайна (хорошие онлайн-курсы: Skillshare, General Assembly, Treehouse и TutsPlus). Я работаю над сторонними проектами. Я увлекаюсь отделом дизайна в книжных магазинах. Есть еще так много, чтобы учиться и совершенствоваться.

Оттачивайте свои навыки и постоянно учитесь.

Learn Design с рисункой

Learn Design с фигмафигмой

. Программная платформа

DesignPrototygingDesign SystemsDownlods

Figjam

Столбная доска для команд

Интернет-доборная доска. Бесплатные профессионально созданные файлы, которые вы можете дублировать, микшировать и использовать

Плагины и виджеты

Расширьте возможности и автоматизируйте работу

События и прямые трансляцииПередовой опытОбразовательная программаГруппы пользователей

FrançaisDeutsch日本語

Начало работы

Начало работы

Начало работы

Хотите начать заниматься дизайном, но не знаете, с чего начать? Эти уроки и упражнения помогут вам сразу приступить к проектированию.

Начните свое обучение дизайну с этих 12 уроков

10 минут

Начало работы

Хотите начать заниматься дизайном, но не знаете, с чего начать? Эти уроки и упражнения помогут вам сразу приступить к проектированию.

9 минут

Что такое графический дизайн?

Дизайн вокруг нас. Это больше, чем делать вещи красивыми. Узнайте больше о том, что такое дизайн и какую роль он играет в современном мире.

5 минут

Дизайн-мышление и этика

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

12 минут

Доступность и включение

Узнайте, что значит проектировать с учетом доступности и инклюзивности.

6 минут

Исследование дизайна

Узнайте о различных типах исследований, используемых в дизайне, и о том, как их проводить.

8 минут

Контент

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

Посмотреть все уроки

Коллекция упражнений и практических файлов

35 минут

1. Бриф на дизайн и мудборд

Узнайте, как создавать привлекательные брифы по дизайну и создавать доски настроения для своих проектов.

Автор записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *