• XSS.stack #1 – первый литературный журнал от юзеров форума

Статья Из кассира в backend. Легкий вкат в C#

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

Какой смысл от того ,что вы знаете если вы не можете это правильно реализовать? РЕАЛИЗОВЫВАТЬ это прямая задача разработчика, а не думать как оно там должно работать в бизнес логике, это задача аналитика.

Другими словами. Вася знает автокад как 5 пальцев, знает теорию, но не знает как реализовать ее в апи. А есть Петя, который не знает как перемножается прямоугольная матрица, но очень круто умеет в код, архитектуру и прочее.
Вопрос: кто быстрее загуглит и найдет решение проблемы?
 
Безусловно есть реально крутые вышки в РФ, но стоят они космических денег и туда так просто не попасть.
да ладно, туда любой колхозник на бюджет сможет поступить, если у него голова на плечах есть. Против колхозников ничего не имею. Лично знаю нескольких таких, кто из нижней подзалупинки поступал на бюджет в топ 10 технических ВУЗов, оканчивал их и сейчас вполне прекрасно себя чувствует в разработке.
а не думать как оно там должно работать в бизнес логике,
вот. НЕ ДУМАТЬ - это ключевое.
Вопрос: кто быстрее загуглит и найдет решение проблемы?
а если решения в гугле нет, тогда что?
Вася знает автокад как 5 пальцев, знает теорию, но не знает как реализовать ее в апи.
Вася потратит чуть больше времени на изучение документации и сделает конфетку. Насчет архитектуры - а Вася прекрасно знает теорию разработки ПО, паттерны, а также еще кучу всего.
А есть Петя, который не знает как перемножается прямоугольная матрица, но очень круто умеет в код, архитектуру и прочее.
Вот после таких петь и приходится все переделывать. Как же такой Петя хотя бы простецкий тест напишет? В гугле калькулятор матриц найдет? Так его Вася писал.
Не знаю что вы там понимаете под "круто", но поверьте моему опыту.
Я не спорю, бывают исключения из правил. Но в большинстве случаев, на длинной дистанции, Вася таки обойдет Петю по всем параметрам.

Вы поймите, я нисколько не пытаюсь принизить Ваши достижения. Ни в коем разе. Но и утверждать, что "вышка" - бесполезная трата времени, по меньшей мере, наивно. Повторюсь. Успех специалиста в любой области прямо пропорционален квадрату его задницы. В моей практике был случай, когда на собеседование пришел человек с вышкой и приличным стажем в закрытом НИИ, но который был абсолютно далек от всех этих ваших бест практик и прочей поебени. При этом прекрасно владел теорией. Его приняли на работу. Через полгода он заткнул за пояс всех петь вместе взятых по продуктивности. Еще и аналитикам нос утер. Хотя изначально о нашей предметной области понятия не имел.
А еще был Петя, который сутками жил за компом, умел в архитектуру и код, но ему очень не хватало фундаментальной базы. В итоге он в свободное время пыхтел над матаном и доебывал вновь прибывшего Васю по всяким сложным теоретическим штукам.
Но это скорее исключения из правил. Среднестатистический вася будет двигаться по проторенной дорожке и лет через 10 станет уважаемым синьором помидором. И никто уже и не вспомнит, что когда-то он пришел голым теоретиком, не умеющим в код.
Среднестатистического петю ждет аналогичная карьера, с той лишь разницей, что его отправят получать вышку для галочки, т.к. в противном случае ему даже должность новую не смогут дать.
 
Автор: Kain1029
Специально для xss.pro


Всем привет. В этой статье я постараюсь обеспечить максимально мягкий вкат в язык программирования C#, постараюсь ответить на большинство вопросов от новичков и развею несколько мифов.

Для начала немного о себе: я backend разработчик с 5ти летним стажем, мой язык преимущественно C# , этот язык я выбрал, по сколько он достаточно простой для понимания, логичный и лаконичный.
Начинал свой путь так же как и многие. Работал продавцом в магазине, по ночам подрабатывал во всевозможных мутных темах. Мне необходим был софт, а платить за него совсем не хотелось(да и собственно нечем). Единственное, что я знал, это "C# это круто и проще, чем C++". С этого все и началось.
Я изначально забивал на теорию и пытался сделать все методом научного тыка, в чем набил достаточно множество шишек и потерял время, а сейчас готов поделиться опытом с вами, чтобы ваш вкат был проще, чем мой.

Ответы на популярные вопросы:

В: Является ли C# сложным языком?
О: Нет. C# очень простой язык. По сути все разделено на классы и методы(если обобщать). Классы это коробки(хоть картонные, как хотите так и представляйте), а методы - нечто, хранящиеся в этих коробках. И чтобы обратиться к методу, необходимо взять нужную коробку , порыться к ней, и достать то, что вам нужно. Это осознание мне очень сильно помогло при изучении. Это все утрировано , но сути так и есть.

В: Почему C# , а не питон?
О: Лично мне питон не нравится синтаксисом, но это вкусовщина. К тому же, я пытался понять питон после C# и для меня это тяжело, в этом моменте меня скорее всего поймут люди, кто переходил с ASM на высокоуровневые языки.
Любой язык это лишь инструмент, соответственно какой инструмент выбрать решаете вы под свои задачи.


В: Как долго учить C#, чтобы устроится на работу?
О: Это пожалуй самый частый вопрос от новичков, и вероятнее всего, ожидается ответ "каждый день по 8 часов", но это в корне не верно. Максимум, чего вы добьетесь - выгорание. В какой то момент вы начнете осознавать, что ничего не понимаете , начнут приходить мысли в голову мол "а надо ли оно мне вообще?". В этот момент главное остановиться и подождать, пока у вас не начнется ломка по изучению нового аспекта языка(проверено, помогает).

В: Как правильно изучать C#?
О: Я рекомендую дробить свое изучение. Если это видео-уроки, то дробить их по видео, если книги, то по главе. Распространенная ошибка - включить видео на фоне и заниматься своими делами, или читать по 150-200 страниц в день. Запомните - это так не работает. Поставили себе цель - смотреть 1 видео в день, но сделать это крайне качественно, попробовать самому что нибудь написать, изучать дополнительные материалы. Если вы предпочитаете читать , то достаточно 1 главы в день и не важно 10 или 20 страниц там. Как правило 1 глава это одна тема, а ваша задача , не прочитать как можно больше букв, а постараться понять написанное. Как только чувствуете ,что не понимаете - останавливаетесь и гуглите до того момента пока не будете знать тему как "отче наш". Если закончили одну главу, но сил еще много - проступайте ко второй, но помните золотое правило - "НЕ БРОСАЙ НА ПОЛОВИНЕ". Начал читать/смотреть - доделай до конца. До последней минуты или страницы. Если ты этого не сделаешь я даю тебе 100% гарантию ,что завтра ты даже не вспомнишь, что читал, а там 2 варианта, либо дочитаешь и мысли не сложатся в один ряд, соответственно не поймешь тему, либо начнешь заново, а какой тогда в этом смысл?

В: Где получить мотивацию?
О: Так же достаточно частый вопрос. Для начала подумайте , для чего вам изучать программирование? Если ваша цель быстренько изучить материал и получать 300к в секунду можете даже не начинать, это не для вас, да и рынок переполнен подобными выскочками. Если же вы вам это реально интересно, в школьные годы интересовал паскаль и информатика в целом, ну либо вы осознаете, что это не быстрый процесс, но все равно хотите поменять свою жизнь в лучшую сторону, то welcome to the club buddy. Искреннее желание - лучшая мотивация.

В: Стоит ли оплачивать курсы программирования?
О: Однажды я хотел записаться на платные курсы, ввиду того, что ничего не понимал, спустя время я могу твердо заявить, что все курсы от скилфактори и подобных ребят - полная шляпа. Вас разуют , вряд ли чему то научат, зато вселят надежду, так вы и будете стоять в один усах, голый , но довольный. Поэтому я советую обучаться самому. Ниже я приведу довольно хорошие материалы для изучения по пунктам. Если все ваше обучение идет по спирали в стиле "О, я понял теперь могу идти на работу -> Нет, ничего не знаю -> Теперь я знаю все работа меня ждет -> Как же можно быть таким тупым", значит вы на верном пути. Если вам кажется, что вы ничего не знаете - вы всегда знаете немного больше, чем вчера. Главное не опускать руки

Рекомендуется для изучения:
Все ссылки предназначены для ознакомления и потому что мне лень искать картинку

Я буду ранжировать книги по сложности по возрастанию. Советую читать их по порядку.

Михаил Фленов. Библия C# 6 издание:
OZON
Данная книга максимально дешевая и короткая, если вы ее прочитаете то будете иметь поверхностное понимание, а языке и его использовании. В ней содержится множество примеров и задач. Я лично читал 4-е издание. Написано, просто и понятно. Однако из минусов: для более менее опытных людей она будет максимально бесполезная, вся информация подается поверхностно, но опять же это и плюс, то бы не перегружать новичков сложными структурами и так далее.
В качестве альтернативы можно попробовать проходить бесплатные курсы, коих в интернете не мало, а так же..

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

Марк Прайс. C# 10 и .NET 6.
OZON
Достаточно не плохо написано. В книге рассказывается как основной синтаксис, так и работа с базой данных и несколькими библиотеками, получается, что книга закрывает сразу несколько потребностей, но так же и имеет свои минусы: Она очень большая, а переплет мягкий, читать ее не удобно. Много тем написаны "голопам по европам", хочется получить больше информации, а нет, автор так не считает, поэтому будете довольствоваться, тем, что имеете. Перевод так себе, так что если вы знаете английский - лучше читайте англоязычную версию.

Джеффри Рихтер. CLR via C#
OZON

Многие ее называют "Библия C#" (и эта не та библия, которая названа в первом пункте). В этой книге рассказывается как работает C# под капотом, почему происходит так , а не иначе, во что превращается ваш код после компиляции. Любой уважающий себя шарпист хоть раз ее читал. Однако это будет очень сложная книга для новичка, скорее она предназначена "для тех, кто в теме". Нет смысла от того, что вы знаете язык, если не знаете как он работает. Лично проверено, что работодатели респектуют тем, кто ее читал. И шансы попасть на работу гораздо выше. Однако, эта книга ОЧЕНЬ старая , но прочитать вы ее обязаны, так как фундаментальные знания не меняются, лишь добавляются новые фичи. Не рекомендую начинать с нее, так для совсем 0 будет не понятно и казаться все нереально сложным.

Эндрю Лок. ASP.NET Core в действии.
OZON

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

Джон Смит. Entity Framework в действии
OZON

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

Где практиковаться?

Я хочу выделить 3 основных направления для получения практики:

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

2. Биржа фриланса. Как бы смешно не звучало, но это отличное место, чтобы получить опыт. Как это работает. Не стоит брать проект сразу. Прочитайте его, поймите, что требуется сделать и делайте это, если успели сделать до того как кто то уже перехватил задачу - пробуйте заработать. Этот вариант подходит для тех ,кто не знает, что написать. А так вы получаете опыт, и есть шанс заработать не большую денежку :)

3. Официальная работа. Не думайте, что после начального обучения вас возьму за 300к в секунду в майкрософт, генеральным директором генерального директора, но вполне вероятно можно найти работу стажером. Множество компаний согласятся вас взять на работу за условные 30-50 т.р. на позицию стажера. Согласен, деньги не большие, НО вы общаетесь с сеньорами , получаете очень мощный буст в своих скилах, и если все хорошо, то вполне вероятно, что через год вас повысят до джуна и дадут прибавку к ЗП. А дальше выбирать вам. Качаться до мидла или переходить в другую компанию для нового буста. Не это ли счастье? Этот способ самый действенный, однако, чтобы устроится даже стажером необходимо иметь какие никакие знания. Так что книгу в зубы и вперед покорять горы.
Посмотреть вложение 83093


А что дальше?
После того как вы изучили базу, нашли самую первую работу. Вам остается только оттачивать свое мастерство. На этом этапе вы вполне себе самостоятельный разработчик, можете брать реальные заказы на фрилансе, писать и продавать софт, или устроится на официальную работу и получать 300к в секунду.
Если не начнешь сегодня - не начнешь уже никогда.

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


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх