Upd: захід перенесено. Про нову дату й час повідомимо пізніше 🤗
Усі ми сумуємо за насиченим студентським життям😰
От, якби була можливість взяти участь в офлайн-заході для айтівців…
Ця можливість є!
Kharkiv IT Cluster і Production Ready за участі команди стартапу Paw Merge запрошують студентів, світчерів і досвідчених айтівців до участі в офлайн-хакатоні Code Sprint!
Code Sprint — це різновид хакатону, однак його зусилля зосереджуються навколо проєкту з відкритим кодом і його вдосконалення.
📆Коли? — 29-30 червня 2024 року з 9:00 до 18:00
📍Де? — Харків, офлайн. Місце проведення повідомимо зареєстрованим учасникам.
Протягом двох днів команди учасників (до 5 осіб) будуть мати завдання, виконання якого передбачає вдосконалення платформи Paw Merge, пошук нових рішень і, звісно ж, програмування.🤩
🧑💻Як узяти участь в Code Sprint?
👉Зареєструватися за посиланням до 24 червня (включно).
👉Підтвердити участь після отримання листа від організаторів.
👉Мати гарний настрій і ноутбук у дні заходу😉
😎Участь безоплатна за попередньої реєстрації. Кількість місць обмежена.
Більше подробиць, зокрема вимоги до учасників і попередній перелік завдань, читай за посиланням!
Не втрачай шанс зробити свій внесок у розвиток ІТ-галузі України!
Реєструйся до участі в Code Sprint зараз та відкривай для себе нові можливості!
#events_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
Усі ми сумуємо за насиченим студентським життям😰
От, якби була можливість взяти участь в офлайн-заході для айтівців…
Ця можливість є!
Kharkiv IT Cluster і Production Ready за участі команди стартапу Paw Merge запрошують студентів, світчерів і досвідчених айтівців до участі в офлайн-хакатоні Code Sprint!
Code Sprint — це різновид хакатону, однак його зусилля зосереджуються навколо проєкту з відкритим кодом і його вдосконалення.
📆Коли? — 29-30 червня 2024 року з 9:00 до 18:00
📍Де? — Харків, офлайн. Місце проведення повідомимо зареєстрованим учасникам.
Протягом двох днів команди учасників (до 5 осіб) будуть мати завдання, виконання якого передбачає вдосконалення платформи Paw Merge, пошук нових рішень і, звісно ж, програмування.🤩
🧑💻Як узяти участь в Code Sprint?
👉Зареєструватися за посиланням до 24 червня (включно).
👉Підтвердити участь після отримання листа від організаторів.
👉Мати гарний настрій і ноутбук у дні заходу😉
😎Участь безоплатна за попередньої реєстрації. Кількість місць обмежена.
Більше подробиць, зокрема вимоги до учасників і попередній перелік завдань, читай за посиланням!
Не втрачай шанс зробити свій внесок у розвиток ІТ-галузі України!
Реєструйся до участі в Code Sprint зараз та відкривай для себе нові можливості!
#events_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
🚨Ліниве обчислення (Lazy evaluation) — це стратегія обчислення, яка відкладає обчислення виразу, поки воно не знадобиться.
🚩У Ruby 2.0 є фіча лінивого обчисленняє. Вона підвищує продуктивність, уникаючи непотрібних обчислень, і має можливість створювати потенційно нескінченні структури даних.
🚩Приклад:🚩
🌶️У цьому прикладі lazy уникає непотрібних обчислень для обчислення power_array.
Якщо ми вилучимо ліниве обчислення із наведеного вище коду, тоді наш код спробує обчислити всі х в діапазоні від 1 до Float::INFINITY.
Щоб уникнути тайм-аутів і винятків розподілу пам'яті, ми використовуємо lazy. Тепер наш код виконуватиме обчислення лише до first(array_size).
🚩Твоє завдання надрукувати масив перших N паліндромних простих чисел.
Наприклад, першими 10 паліндромними простими числами є [2, 3, 5, 7, 11, 101, 131, 151, 181, 191].
🚩Формат введення: один рядок, що містить ціле число.
🚩Обмеження: тобі не відомо, наскільки N велике.
🚩Формат виводу: виведи масив перших N паліндромних простих чисел.
🚩Зразок:
5
# виведе як результат [2, 3, 5, 7, 11]
#CodingChallenges_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
🚩У Ruby 2.0 є фіча лінивого обчисленняє. Вона підвищує продуктивність, уникаючи непотрібних обчислень, і має можливість створювати потенційно нескінченні структури даних.
🚩Приклад:🚩
power_array = -> (power, array_size) do
1.upto(Float::INFINITY).lazy.map { |x| x**power }.first(array_size)
end
puts power_array.(2 , 4) #[1, 4, 9, 16]
puts power_array.(2 , 10) #[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
puts power_array.(3, 5) #[1, 8, 27, 64, 125]🌶️У цьому прикладі lazy уникає непотрібних обчислень для обчислення power_array.
Якщо ми вилучимо ліниве обчислення із наведеного вище коду, тоді наш код спробує обчислити всі х в діапазоні від 1 до Float::INFINITY.
Щоб уникнути тайм-аутів і винятків розподілу пам'яті, ми використовуємо lazy. Тепер наш код виконуватиме обчислення лише до first(array_size).
🚩Твоє завдання надрукувати масив перших N паліндромних простих чисел.
Наприклад, першими 10 паліндромними простими числами є [2, 3, 5, 7, 11, 101, 131, 151, 181, 191].
🚩Формат введення: один рядок, що містить ціле число.
🚩Обмеження: тобі не відомо, наскільки N велике.
🚩Формат виводу: виведи масив перших N паліндромних простих чисел.
🚩Зразок:
5
# виведе як результат [2, 3, 5, 7, 11]
#CodingChallenges_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
👍1
📱 Розширяй свій словарний запас ІТ-англійської
🔗Spyware — шпигунське програмне забезпечення (передає дані з жорсткого диска комп’ютера користувачеві на іншому комп’ютері).
🔗Tag file — конфігураційний файл.
🔗Template — шаблон.
🔗Tool — інструмент.
🔗Transfer — переказувати кошти.
🔗User interface — інтерфейс користувача.
🔗Web accessing — доступ у вебсистему.
#IT_dictionary_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
🔗Spyware — шпигунське програмне забезпечення (передає дані з жорсткого диска комп’ютера користувачеві на іншому комп’ютері).
🔗Tag file — конфігураційний файл.
🔗Template — шаблон.
🔗Tool — інструмент.
🔗Transfer — переказувати кошти.
🔗User interface — інтерфейс користувача.
🔗Web accessing — доступ у вебсистему.
#IT_dictionary_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
❤3👍1
📷Патерн Memento 📷
🤓Цей патерн дозволяє зберігати й відновлювати попередній стан об'єкта без порушення інкапсуляції. Це дуже корисно, коли ти хочеш додати функціонал відміни дії або повернення до попереднього стану.
Зазвичай у патерні Memento є три основні компоненти 👇
📜1. Originator — об'єкт, стан якого потрібно зберегти.
📜2. Memento — об'єкт, який зберігає стан Originator.
📜3. Caretaker — об'єкт, який управляє Memento і зберігає його історію.
Приклад коду на Python:
#CodeBreakdown_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
🤓Цей патерн дозволяє зберігати й відновлювати попередній стан об'єкта без порушення інкапсуляції. Це дуже корисно, коли ти хочеш додати функціонал відміни дії або повернення до попереднього стану.
Зазвичай у патерні Memento є три основні компоненти 👇
📜1. Originator — об'єкт, стан якого потрібно зберегти.
📜2. Memento — об'єкт, який зберігає стан Originator.
📜3. Caretaker — об'єкт, який управляє Memento і зберігає його історію.
Приклад коду на Python:
# Originator
class Editor:
def init(self):
self._content = ""
def type(self, words):
self._content += words
def save(self):
return Memento(self._content)
def restore(self, memento):
self._content = memento.get_content()
def get_content(self):
return self._content
# Memento
class Memento:
def init(self, content):
self._content = content
def get_content(self):
return self._content
# Caretaker
class History:
def init(self):
self._mementos = []
def save(self, memento):
self._mementos.append(memento)
def undo(self):
if not self._mementos:
return None
return self._mementos.pop()
# Використання
editor = Editor()
history = History()
editor.type("Привіт! ")
editor.type("Як справи? ")
history.save(editor.save()) # Зберегти стан
editor.type("Все добре. ")
print("Поточний зміст:", editor.get_content()) # Привіт! Як справи? Все добре.
editor.restore(history.undo()) # Відновити попередній стан
print("Відновлений зміст:", editor.get_content()) # Привіт! Як справи?
У цьому прикладі маємо простий текстовий редактор (Originator), який може зберігати свій стан (Memento) і повертатися до попередніх станів за допомогою історії змін (Caretaker). 📑#CodeBreakdown_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
👍2
Technical writer📚
Це фахівець, який складає технічну документацію для розробників. 📄
📝Основна задача Technical writer
Грамотно створювати, ілюструвати та адаптувати документацію на зрозумілій мові для кінцевого користувача. Документація може бути внутрішньою для команди чи проєкту, або зовнішньою для клієнта.
До основних обов'язків technical writer входить:
📚Створення користувацької документації та довідкових систем.
📚Створення документації для системних адміністраторів.
📚Підготовка графічних схем за заданими параметрами.
📚Регулярне оновлення існуючої документації відповідно до релізів ПО.
📚Створення навчальних матеріалів для нових користувачів.
🛠️Основні інструменти technical writer — текстовий редактор, диктофон, а також різноманітні програми залежно від проєкту, зокрема MS Word, Adobe FrameMaker, Adobe RoboHelp, MadCapFlare та інші.
Як стати technical writer?
Цій спеціальності не вчать в університетах, тому потрібно опановувати професію самостійно. Читати Microsoft Manual of Style, досліджувати стиль написання документації великих технічних компаній, вчитися грамотно й послідовно викладати інформацію. Важливо також ознайомитися з основними інструментами й технологічними засобами, які використовують технічні письменники. 📖
#IT_facts_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
Це фахівець, який складає технічну документацію для розробників. 📄
📝Основна задача Technical writer
Грамотно створювати, ілюструвати та адаптувати документацію на зрозумілій мові для кінцевого користувача. Документація може бути внутрішньою для команди чи проєкту, або зовнішньою для клієнта.
До основних обов'язків technical writer входить:
📚Створення користувацької документації та довідкових систем.
📚Створення документації для системних адміністраторів.
📚Підготовка графічних схем за заданими параметрами.
📚Регулярне оновлення існуючої документації відповідно до релізів ПО.
📚Створення навчальних матеріалів для нових користувачів.
🛠️Основні інструменти technical writer — текстовий редактор, диктофон, а також різноманітні програми залежно від проєкту, зокрема MS Word, Adobe FrameMaker, Adobe RoboHelp, MadCapFlare та інші.
Як стати technical writer?
Цій спеціальності не вчать в університетах, тому потрібно опановувати професію самостійно. Читати Microsoft Manual of Style, досліджувати стиль написання документації великих технічних компаній, вчитися грамотно й послідовно викладати інформацію. Важливо також ознайомитися з основними інструментами й технологічними засобами, які використовують технічні письменники. 📖
#IT_facts_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
👍1
🌟 Безкоштовні курси для опанування Ruby та Ruby on Rails 🌟
1. Codecademy — Learn Ruby 📚
2. LearnRubyOnline.org💻
3. Educative — Learn Ruby from Scratch 🔧
4. RubyGuides — Ruby Tutorial for Complete Beginners 📖
5. TutorialsPoint — Learn Ruby Programming 🎓
6. Learn Ruby The Hard Way
Бонус — відео на YouTube
🎥Ruby Programming Language – Full Course — від freeCodeCamp
🎥Ruby For Beginners — від Best Tutorial
🎥Ruby On Rails Crash Course — від Traversy Media
#selections_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
1. Codecademy — Learn Ruby 📚
2. LearnRubyOnline.org💻
3. Educative — Learn Ruby from Scratch 🔧
4. RubyGuides — Ruby Tutorial for Complete Beginners 📖
5. TutorialsPoint — Learn Ruby Programming 🎓
6. Learn Ruby The Hard Way
Бонус — відео на YouTube
🎥Ruby Programming Language – Full Course — від freeCodeCamp
🎥Ruby For Beginners — від Best Tutorial
🎥Ruby On Rails Crash Course — від Traversy Media
#selections_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
❤1
🌟 Факти про аутсорсинг 🌟
Aутсорсинг — це передача компанією частини її завдань або процесів стороннім виконавцям на умовах субпідряду.
🏺Перша відома згадка про аутсорсинг датується 4000 роком до н.е., коли стародавні єгипетські фараони наймали ремісників для створення виробів для королівського двору.
📅 Термін «аутсорсинг» уперше з'явився у 1980-х роках, коли компанії почали наймати зовнішніх підрядників для виконання допоміжних функцій.
📞 Однією з найбільш популярних функцій на аутсорингуі є послуги кол-центрів.
Компанії часто аутсорсять свої кол-центри до країн, де робоча сила дешевша, таких як Індія чи Філіппіни. Це дозволяє їм заощаджувати на витратах оплати прац й забезпечувати високоякісне обслуговування клієнтів.
🌿 Аутсорсинг може покращити екологічний вплив компанії
Аутсорсинг деяких бізнес-функцій дозволяє зменшити потребу у внутрішніх ресурсах, таких як офісні приміщення й комунальні послуги, що допомагає знизити загальні викиди вуглецю.
#interesting_facts_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
Aутсорсинг — це передача компанією частини її завдань або процесів стороннім виконавцям на умовах субпідряду.
🏺Перша відома згадка про аутсорсинг датується 4000 роком до н.е., коли стародавні єгипетські фараони наймали ремісників для створення виробів для королівського двору.
📅 Термін «аутсорсинг» уперше з'явився у 1980-х роках, коли компанії почали наймати зовнішніх підрядників для виконання допоміжних функцій.
📞 Однією з найбільш популярних функцій на аутсорингуі є послуги кол-центрів.
Компанії часто аутсорсять свої кол-центри до країн, де робоча сила дешевша, таких як Індія чи Філіппіни. Це дозволяє їм заощаджувати на витратах оплати прац й забезпечувати високоякісне обслуговування клієнтів.
🌿 Аутсорсинг може покращити екологічний вплив компанії
Аутсорсинг деяких бізнес-функцій дозволяє зменшити потребу у внутрішніх ресурсах, таких як офісні приміщення й комунальні послуги, що допомагає знизити загальні викиди вуглецю.
#interesting_facts_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
😁1
💻 Міфи про розробників
🖥️Міф #1: розробники цілими днями пишуть код
Робота розробника також передбачає спілкування з колегами, клієнтами, проведення нарад тощо.
🙋Міф #2: розробниками можуть бути тільки чоловіки
Згідно з різноманітними дослідженнями, жінки можуть бути так само успішні в програмуванні, як і чоловіки, адже ця діяльність вимагає не лише математичної інтуїції, а й творчості, логічного мислення й комунікативних навичок. 👩💻
🥇Міф #3: усі розробники — генії
Щоб стати програмістом, не потрібні видатні здібності, досвід чи знання вищої математики. Багато людей, які успішно працюють у сфері програмування, починали свій шлях без спеціальної підготовки й досягали успіху завдяки своїй працелюбності та наполегливості. 🔧
#myths_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
🖥️Міф #1: розробники цілими днями пишуть код
Робота розробника також передбачає спілкування з колегами, клієнтами, проведення нарад тощо.
🙋Міф #2: розробниками можуть бути тільки чоловіки
Згідно з різноманітними дослідженнями, жінки можуть бути так само успішні в програмуванні, як і чоловіки, адже ця діяльність вимагає не лише математичної інтуїції, а й творчості, логічного мислення й комунікативних навичок. 👩💻
🥇Міф #3: усі розробники — генії
Щоб стати програмістом, не потрібні видатні здібності, досвід чи знання вищої математики. Багато людей, які успішно працюють у сфері програмування, починали свій шлях без спеціальної підготовки й досягали успіху завдяки своїй працелюбності та наполегливості. 🔧
#myths_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
👍2
🇺🇸Лайфгаки для проходження співбесіди англійською 🇺🇸
❓Зроби коротку презентацію свого досвіду
(Make a short presentation of your experience)
➡️Рекрутер хоче почути структуровану логічну розповідь про твій професійний шлях. Якщо маєш багато років досвіду, то краще розповідати про одну-дві останніх компанії, тобто про той досвід, що є релевантним позиції, на яку ти проходиш співбесіду. Опиши інструменти й підходи, з якими тобі доводилось працювати.
➡️Описуючи свою освіту, зосередься на релевантних навчальних курсах/програмах. Те саме стосується навичок і додаткових умінь. Не варто говорити надто довго, — увага співрозмовника з часом втрачається, і він може не почути важливих речей, якщо ти скажеш про них наостанок.
➡️Не варто довго перераховувати свої переваги без будь-яких обґрунтувань і пояснень. Це звучить неправдоподібно й надто самовпевнено.
🗣️Використовуй такі вислови
🌱I am a ... by training. — Я (вкажи свою спеціалізацію) за освітою.
🌱My professional experience includes... — Мій професійний досвід включає...
🌱Within my professional experience I have been engaged in... — У межах свого професійного досвіду я займався (основні завдання, які ти виконував).
🌱I have been working as... for... — Я працював на посаді (твоя посада, професія) упродовж (кількість років).
🌱I have over... years of experience in... — Я маю понад (кількість) років досвіду у (твоя сфера).
🌱My skills include / I have: knowledge of foreign languages...; knowledge of programming languages...; skills to create, develop ... — Зокрема, я володію іноземними мовами (вкажи якими); знаю мови програмування (перерахуй їх); умію створювати й розробляти (укажи, що саме).
#interview_tips_for_students
❓Зроби коротку презентацію свого досвіду
(Make a short presentation of your experience)
➡️Рекрутер хоче почути структуровану логічну розповідь про твій професійний шлях. Якщо маєш багато років досвіду, то краще розповідати про одну-дві останніх компанії, тобто про той досвід, що є релевантним позиції, на яку ти проходиш співбесіду. Опиши інструменти й підходи, з якими тобі доводилось працювати.
➡️Описуючи свою освіту, зосередься на релевантних навчальних курсах/програмах. Те саме стосується навичок і додаткових умінь. Не варто говорити надто довго, — увага співрозмовника з часом втрачається, і він може не почути важливих речей, якщо ти скажеш про них наостанок.
➡️Не варто довго перераховувати свої переваги без будь-яких обґрунтувань і пояснень. Це звучить неправдоподібно й надто самовпевнено.
🗣️Використовуй такі вислови
🌱I am a ... by training. — Я (вкажи свою спеціалізацію) за освітою.
🌱My professional experience includes... — Мій професійний досвід включає...
🌱Within my professional experience I have been engaged in... — У межах свого професійного досвіду я займався (основні завдання, які ти виконував).
🌱I have been working as... for... — Я працював на посаді (твоя посада, професія) упродовж (кількість років).
🌱I have over... years of experience in... — Я маю понад (кількість) років досвіду у (твоя сфера).
🌱My skills include / I have: knowledge of foreign languages...; knowledge of programming languages...; skills to create, develop ... — Зокрема, я володію іноземними мовами (вкажи якими); знаю мови програмування (перерахуй їх); умію створювати й розробляти (укажи, що саме).
#interview_tips_for_students
👍3❤2
🌎Тренуємо логіку на питаннях зі співбесіди Google 🌎
🔐Завдання: зараз Тому 16 років, і він у чотири рази старший за свого брата Роберта. Скільки років буде Тому, коли він буде удвічі старший за свого брата?
Спробуй спочатку вирішити самостійно, а потім перевір 🤫
🌿Якщо Тому 16 років і він у 4 рази старший за свого брата Роберта, то наразі вік його брата буде 16/4 = 4. Отже, його братові 4 роки.
🌿Це робить Тома на 12 років старшим за свого брата.
🌿Том буде вдвічі старший за свого брата, коли Роберту виповниться 12 років, бо 12*2 = 24. Це означає, що коли Томy виповниться 24 роки, його братy буде 12 років.
#tasks_for_students
🔐Завдання: зараз Тому 16 років, і він у чотири рази старший за свого брата Роберта. Скільки років буде Тому, коли він буде удвічі старший за свого брата?
Спробуй спочатку вирішити самостійно, а потім перевір 🤫
🌿Це робить Тома на 12 років старшим за свого брата.
🌿Том буде вдвічі старший за свого брата, коли Роберту виповниться 12 років, бо 12*2 = 24. Це означає, що коли Томy виповниться 24 роки, його братy буде 12 років.
#tasks_for_students
🚀Круті технології майбутнього🚀
🚙Автомобілі, які літають✈️
Vahana — проєкт від Airbus, який розробляє електричні одномісні літаки, що слідують заздалегідь визначеними маршрутами. Вони зможуть злітати й сідати без злітно-посадкової смуги завдяки поворотним роторам. ✈️
Volocopter — це електричний багатороторний коптер з автономною системою управління, здатний перевозити двох пасажирів і літати до 30 хвилин. 🚁
💭Машини, які читають думки💭
Професор Марсель Джаст із Університету Карнегі-Меллона використовує функціональну магнітно-резонансну томографію (fMRI) для сканування мозку й виявлення думок у момент їх виникнення. 🧠
Поки що є обмеження, такі як складність розрізнення схожих понять і необхідність повної співпраці з учасником. Але команда Джаста працює над версією з використанням ЕЕГ (електроенцефалографії), що потребує лише просту електродну шапку. Він оптимістично налаштований щодо того, наскільки швидко можна буде створити робочий пристрій для читання думок. 🕶️
#startup_stories_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
🚙Автомобілі, які літають✈️
Vahana — проєкт від Airbus, який розробляє електричні одномісні літаки, що слідують заздалегідь визначеними маршрутами. Вони зможуть злітати й сідати без злітно-посадкової смуги завдяки поворотним роторам. ✈️
Volocopter — це електричний багатороторний коптер з автономною системою управління, здатний перевозити двох пасажирів і літати до 30 хвилин. 🚁
💭Машини, які читають думки💭
Професор Марсель Джаст із Університету Карнегі-Меллона використовує функціональну магнітно-резонансну томографію (fMRI) для сканування мозку й виявлення думок у момент їх виникнення. 🧠
Поки що є обмеження, такі як складність розрізнення схожих понять і необхідність повної співпраці з учасником. Але команда Джаста працює над версією з використанням ЕЕГ (електроенцефалографії), що потребує лише просту електродну шапку. Він оптимістично налаштований щодо того, наскільки швидко можна буде створити робочий пристрій для читання думок. 🕶️
#startup_stories_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
👍1
🗿Поборемося з Інтернет-троллями?🗿
🔫Уяви, що тролі атакують твій розділ коментарів на сайті!
🧙Поширеним способом вирішення цієї ситуації є видалення всіх голосних із коментарів тролів, нейтралізуючи загрозу.
🗡Завдання — написати функцію, яка приймає рядок і повертає новий рядок із видаленням усіх голосних.
Наприклад, рядок «This website is for losers LOL!" стане "Ths wbst s fr lsrs LL!»
🗡Примітка: для цього завдання «y» не вважається голосною.
#CodingChallenges_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
🔫Уяви, що тролі атакують твій розділ коментарів на сайті!
🧙Поширеним способом вирішення цієї ситуації є видалення всіх голосних із коментарів тролів, нейтралізуючи загрозу.
🗡Завдання — написати функцію, яка приймає рядок і повертає новий рядок із видаленням усіх голосних.
Наприклад, рядок «This website is for losers LOL!" стане "Ths wbst s fr lsrs LL!»
🗡Примітка: для цього завдання «y» не вважається голосною.
#CodingChallenges_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
🤔2
🎤Добірка корисних ІТ-дієслів
🌱To arise — вискочити, з’явитися.
🌱To back up – виконувати резервне копіювання.
🌱To boot – завантажувати.
🌱To create – створювати.
🌱To compress – стискати (файли).
🌱To connect – з’єднувати.
🌱To DM (direct message) – відправляти пряме повідомлення (писати в приватні повідомлення).
🌱To debug – усувати баги, налагоджувати.
🌱To delete – видаляти.
#IT_dictionary_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
🌱To arise — вискочити, з’явитися.
🌱To back up – виконувати резервне копіювання.
🌱To boot – завантажувати.
🌱To create – створювати.
🌱To compress – стискати (файли).
🌱To connect – з’єднувати.
🌱To DM (direct message) – відправляти пряме повідомлення (писати в приватні повідомлення).
🌱To debug – усувати баги, налагоджувати.
🌱To delete – видаляти.
#IT_dictionary_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
❤3
🌟 Патерн програмування Interpreter 🌟
📜Interpreter — це поведінковий патерн, який визначає граматику мови й реалізує інтерпретатор, який виконує вирази цієї мови. Іншими словами він дозволяє визначати, як інтерпретувати мову та виконувати її вирази. Це дуже корисно, коли потрібно обробляти скрипти або мови з власним синтаксисом.
Основні компоненти патерну
🎮1. Expression (Вираз): абстрактний клас або інтерфейс, який визначає метод interpret.
🎮2. Terminal Expression (Термінальний вираз): конкретна реалізація виразу, яка виконує основні операції.
🎮3. Nonterminal Expression (Нетермінальний вираз): реалізація, яка містить інші вирази.
🎮4. Context (Контекст): середовище виконання, яке передає дані та викликає інтерпретатор.
Приклад коду на Python 🐍
from abc import ABC, abstractmethod
# Абстрактний клас для виразу
class Expression(ABC):
@abstractmethod
def interpret(self, context):
pass
# Конкретні вирази
class Number(Expression):
def init(self, value):
self.value = value
def interpret(self, context):
return self.value
class Add(Expression):
def init(self, left, right):
self.left = left
self.right = right
def interpret(self, context):
return self.left.interpret(context) + self.right.interpret(context)
class Subtract(Expression):
def init(self, left, right):
self.left = left
self.right = right
def interpret(self, context):
return self.left.interpret(context) - self.right.interpret(context)
# Контекст, який виконує вирази
class Context:
def init(self, expression):
self.expression = expression
def evaluate(self):
return self.expression.interpret(self)
# Використання
if name == "main":
# Створюємо вираз (5 + 3) - 2
expression = Subtract(Add(Number(5), Number(3)), Number(2))
context = Context(expression)
result = context.evaluate()
print(f"Результат: {result}") # Виведе: 6
Цей патерн дозволяє легко додавати нові операції, не змінюючи існуючий код. Наприклад, можна додати новий оператор multiply для множення, просто створивши новий клас. 🔧
#CodeBreakdown_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!
📜Interpreter — це поведінковий патерн, який визначає граматику мови й реалізує інтерпретатор, який виконує вирази цієї мови. Іншими словами він дозволяє визначати, як інтерпретувати мову та виконувати її вирази. Це дуже корисно, коли потрібно обробляти скрипти або мови з власним синтаксисом.
Основні компоненти патерну
🎮1. Expression (Вираз): абстрактний клас або інтерфейс, який визначає метод interpret.
🎮2. Terminal Expression (Термінальний вираз): конкретна реалізація виразу, яка виконує основні операції.
🎮3. Nonterminal Expression (Нетермінальний вираз): реалізація, яка містить інші вирази.
🎮4. Context (Контекст): середовище виконання, яке передає дані та викликає інтерпретатор.
Приклад коду на Python 🐍
from abc import ABC, abstractmethod
# Абстрактний клас для виразу
class Expression(ABC):
@abstractmethod
def interpret(self, context):
pass
# Конкретні вирази
class Number(Expression):
def init(self, value):
self.value = value
def interpret(self, context):
return self.value
class Add(Expression):
def init(self, left, right):
self.left = left
self.right = right
def interpret(self, context):
return self.left.interpret(context) + self.right.interpret(context)
class Subtract(Expression):
def init(self, left, right):
self.left = left
self.right = right
def interpret(self, context):
return self.left.interpret(context) - self.right.interpret(context)
# Контекст, який виконує вирази
class Context:
def init(self, expression):
self.expression = expression
def evaluate(self):
return self.expression.interpret(self)
# Використання
if name == "main":
# Створюємо вираз (5 + 3) - 2
expression = Subtract(Add(Number(5), Number(3)), Number(2))
context = Context(expression)
result = context.evaluate()
print(f"Результат: {result}") # Виведе: 6
Цей патерн дозволяє легко додавати нові операції, не змінюючи існуючий код. Наприклад, можна додати новий оператор multiply для множення, просто створивши новий клас. 🔧
#CodeBreakdown_for_students
👉 IT Student — будь в курсі IT-можливостей для тебе!