Чотири запитання, які Ви повинні постійно ставити собі під час програмування


Дізнайтесь більше про нові кар'єрні можливості в EchoUA. Цікаві проекти, ринкова оплата, гарний колектив. Надсилайте резюме та приєднуйтеся до нас.

Більшість сучасних мов програмування загального призначення надають величезну кількість можливостей і способів його використати. Часто їх можна застосовувати на цілому наборі рівнів абстракції, вибираючи з десятків варіантів реалізації певної фічі. Деякі можливості призначені розробникам бібліотек, інші для швидкої реалізації додатків кінцевим користувачам. І програмісти не завжди користуються оптимальними інструментами для своїх задач.

Наприклад, новачки досить часто застосовують у коді низькорівневі потоки, тоді як зазвичай набагато вигідніше використати високорівневі речі типу workers, tasks або actors. З ними не лише простіше поводитися, часто вони точніше підходять для розв’язання початкової задачі.

Як зрозуміти, що саме оптимально підходить для розв’язання задачі?

Насправді це складне запитання. Якщо Ваша поточна задача здається Вам складною, то швидше за все потрібно просто зробити крок назад, адже “в програмуванні є тільки дві складні речі: інвалідація кеша, вибір імені змінної, і помилки на одиницю” (Джеф Етвуд).

А потім поставте собі декілька простих запитань:

  1. Напевно хтось вже розв’язував аналогічну задачу до мене. Чи пошукав я підказки або готові розв’язання інших розробників?
  2. Чи (краще) є бібліотека, структура даних або абстракція для моєї задачі?
  3. Мені, дійсно, треба розв’язувати цю задачу саме так? Напевно має бути кращий або простіший спосіб.
  4. Які плюси я отримаю від використання цієї фічі, бібліотеки або інструмента і скільки зусиль це мені коштуватиме? Чи є альтернативи?

Висновок

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

За матеріалами записи у блозі Mihael Vrbanec

Київ, Харків, Одеса, Дніпро, Запоріжжя, Кривий Ріг, Вінниця, Херсон, Черкаси, Житомир, Хмельницький, Чернівці, Рівне, Івано-Франківськ, Кременчук, Тернопіль, Луцьк, Ужгород, Кам'янець-Подільський, Стрий - за статистикою саме з цих міст програмісти найбільше переїжджають працювати до Львова. А Ви розглядаєте relocate?


Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *