Нотатки програміста
175 subscribers
24 photos
8 videos
9 files
45 links
Кидаю нотатки й думки з роботи, як Senior Full Stack Developer, Tech Leader, Team Leader і лектор IT)

Огляд технологій, пояснення, новини, проходження співбесід, реклама цікавих додатків і компаній, і багато іншого!

Більше: https://linktr.ee/alex.demko
Download Telegram
І так!
Хотів би розповісти невеличке відкриття для мене

А саме: https://codecanyon.net

Це сайт для того, щоб ти міг за невелику ціну купити код з цілою системою!

Ось наприклад, один з моїх замовників, захотів, щоб я йому створив сайт, але спочатку він його придбав на цьому сайті (а саме iBooking) і єдине, що мені треба зробити - підлаштувати трішки код до того, що він хоче!

А не все робити з самого початку))

Так, що - рекомендую, якщо хочеш трішки зекономити часу та грошей 😉


P.S. фото, до речі, що реально був отриманий повноційний сайт та код до нього


#python #web
👏7
І так!
Намагався завантажити бібліотеку Tensorflow (Python)…

Не виходило… писало, ось таку помилку (фото)


Але після де-якого часу Гугління знайшов ось такий варіант, який спрацював))
python3 -m pip install --upgrade https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.12.0-py3-none-any.whl


Джерело: https://stackoverflow.com/questions/38896424/tensorflow-not-found-using-pip


#python #advance #problem
👍5🤔2
А ще, якщо у тебе буде така проблема у штучному інтелекті (перше фото) - використовуйте для значення x ось цей метод: tf.expand_dims(variable_name, axis=-1) 😁
Результат: (друге фото)


Але прочитайте спочатку що воно зробить 😉
Для того, щоб потім не здивуватися)


Джерело: https://github.com/keras-team/keras/issues/15521


#python #advance #problem
🤯5
Для Mac, або Linux

Якщо виникла така помилка під час використання пакетних менеджерів (pip, npm, інші…) (фото)

То використай приставку: sudo

Це команда завдяки якій, ти говориш комп‘ютеру, що впевнений у виконанні конкретної дії 😉

Використовуй в задоволення))


#web #python #basic #problem
👍7
Вітаю!

Якщо комусь потрібен дизайнер)
Можу порекомендувати: @nnastya_jl

Зараз співпрацюю з нею - чудовий дизайнер!


#web #python #basic #advance
🔥6
Хочу порекомендувати тобі один сервіс, там де ти зможеш навчитися друкувати в сліпу: https://www.ratatype.com


Навіщо це потрібно?

Так як ти, або програміст, або хочеш ним стати - тобі треба буде багато друкувати)

На цьому сервісі ти навчишся друкувати свій код швидше! Ти навіть, зможеш писати код паралельно зі своїм викладачем, що допоможе тобі в навчанні, на роботі - та взагалі зі всім, що повʼязано з компʼютером!

А ще робити менше помилок) особливо, коли плутаєш українську та англійську клавіатуру))


#web #python
🔥6👍3
Вітаю! 😃

Контекстний менеджер - це можливість в Python, яка дозволяє автоматично відкривати будь-який файл та редагувати його, й автоматично закривати цей файл

Контекстний менеджер в Python реалізується за допомогою ключових слів with і as

Приклад використання контекстного менеджера в Python:

with open('example.txt', 'r') as f:
f.write(ʼHello world!ʼ)
data =
f.read()
print(data)

У цьому прикладі with open('example.txt', 'r') as f: створює контекст, у якому файл 'example.txt' відкривається та спочатку туди ми вписуємо текст, а потім створюємо зміну, у якій читаємо файл та виводимо його у термінал
Після виконання коду контекстний менеджер автоматично закриває файл

Ось так ось 😌
Сподіваюсь, тобі тепер стало зрозуміліше, як це працює 😉


Якщо ти насолоджуєшся моїми постами, донат допоможе мені віддавати більше часу на створення якісного контенту 🤗
5375411501575463

#python
⚡7🔥4
Вітаю! 😃

ORM (Object-Relational Mapping) - це підхід до роботи з базами даних, через обʼєктноорієнтовану мову програмування

У фреймворку Django ORM використовується для спрощення взаємодії з базою даних

Замість того, щоб писати SQL код, ти можеш писати звичайні Python-функції для взаємодії з базою даних

Django ORM забезпечує можливість виконувати операції з базою даних, такі як додавання, зчитування, оновлення та видалення записів

Наприклад, ти можеш створити таблицю у базі даних, через Django, який створить користувача:

from django.db import models

class User(models.Model):
name = models.CharField(max_length=50)
email = models.EmailField()
age = models.IntegerField()

Якщо хочеш додати нового користувача, ви можете створити новий об'єкт моделі та викликати метод save() для збереження його в базі даних:

user = User(name='John', email='john@example.com', age=25)
user.save()

Щоб зчитати всіх користувачів з бази даних, ти можеш викликати метод all() на моделі:

users = User.objects.all()

Для оновлення запису користувача в базі даних ти можеш змінити відповідний атрибут об'єкта моделі та викликати метод save():

user = User.objects.get(name='John')
user.age = 26
user.save()

Отже, Django ORM дозволяє працювати з базою даних за допомогою об'єктів Python, що спрощує розробку веб-додатків та забезпечує безпеку й ефективність взаємодії з базою даних


Якщо ти насолоджуєшся моїми постами, донат допоможе мені віддавати більше часу на створення якісного контенту 🤗
5375411501575463

#python
🔥7🤩2
Висновок 😌

У цій статті ми розглянули різницю між асинхронністю, багатопоточністю та багатопроцесорністю на Python

Асинхронність дозволяє програмі виконувати багато різних операцій одночасно та зменшує накладні витрати на створення нових потоків або процесів

Багатопоточність дозволяє програмі виконувати декілька задач паралельно в межах одного процесу

Багатопроцесорність дозволяє програмі виконувати декілька задач паралельно в межах декількох процесів

Кожен з цих методів має свої переваги та недоліки, тому вибір підходу залежить від конкретної задачі та того, як будуть використовуватися ресурси!

Якщо ти хочеш виконувати багато запитів до зовнішніх сервісів (даних), або до баз даних, асинхронність може бути найбільш оптимальним варіантом)

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

Багатопоточність може бути корисною у випадках, коли необхідно обробити багато коротких задач, які зазвичай не звʼязані між собою


Як бачиш, при розробці програм на Python важливо знати різницю між цими підходами та їх можливості, щоб вибрати оптимальний підхід для вирішення конкретної задачі)

Але я тобі спробував пояснити як можна простіше це 😌

Якщо будуть якісь питання додаткові - можеш написати мені особисто 😉 (@alex_demko_work)



Якщо ти насолоджуєшся моїми постами, донат допоможе мені віддавати більше часу на створення якісного контенту 🤗
5375411501575463

#python
🔥6💯2
Вітаю! 😃️️️️️️

Щось я почав бути посередником між тобою та клієнтами відчуваю 😂

Як виявилось, мені нещодавно написав ще один клієнт у Fiverr

Якщо тобі цікаво взяти цей проект, можеш йому написати сюди: domf571@gmail.com

Я ж казав, що люблю тут виставляти всілякі цікаві проекти))


Якщо ти насолоджуєшся моїми постами, донат допоможе мені віддавати більше часу на створення якісного контенту 🤗
5375411501575463

#web #python #sql
🤩4❤2🔥1
Вітаю! 😃

Давайте поговоримо про «Шаблони проектування» 😌

Шаблони проектування є важливим інструментом для розробників, вони дозволяють систематизувати й оптимізувати процес створення програми, створює зручні та правильні підходи до вирішення певних задач і допомагають підтримувати високу якість коду та забезпечити його легку розширюваність і зрозумілість 😉 (іншими словами: вони роблять програмування простіше та якісніше)

Основні причини використання шаблонів проектування:

1. Повторне використання коду: Шаблони дозволяють розробникам не починати створення коду з нуля кожного разу, коли стикаються з схожою задачею

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

2. Стандартизація: Використання шаблонів допомагає встановити стандарт для проектування додатку

Це робить код більш зрозумілим для інших розробників, які можуть брати участь в проекті пізніше, або для самих розробників у майбутньому, коли їм потрібно буде оновити чи розширити програму

3. Забезпечення якості: Шаблони випробувалися часом та досвідом, і їх ефективність перевірена на практиці

Вони допомагають уникнути багатьох помилок, які можуть з'явитися при проектуванні та реалізації програмного продукту

4. Легкість розширення: Завдяки шаблонам, програмне забезпечення стає більш гнучким та легше розширюваним

Вони дозволяють додавати новий функціонал без необхідності переписувати вже існуючий код 😌

5. Комунікація: Шаблони допомагають розробникам зрозуміти один одного та спілкуватися з іншими членами команди, що полегшує спілкування та обмін знанням 💪


Деякі з найпоширеніших шаблонів проектування включають: Singleton (Одинак), Factory (Фабрика), Observer (Спостерігач), і MVC (Model-View-Controller) тощо

Які ми будемо дивитися на цьому каналі! 😌

І дякую, одному зі своїх учнів за таку цікаву ідею!!! 🥳🥳🥳

Нагадую, ти можеш мені писати з пропозиціями в Телеграм і я їх обов’язково розгляну та швидш за все включу в цей канал

Через що плюс, як і тобі, так і мені 😉

А ми тим часом продовжимо

З їх допомогою команди можуть ефективно працювати над проектами, знижуючи час розробки та ризики пов'язані з помилками, і створюючи більш структуровані та легко збережені рішення 😌

Ці шаблони можуть використовуватися у будь-якій сфері програмування: створення веб-сайтів, робота з Python, PHP, створення додатку з .NET, або Swift та в багатьох інших сфер!

У наступних постах будуть зʼявлятися теги: #pattern - саме на них я буду пояснювати кожен з патернів, використовуючи, також приклад на де-яких мовах програмування 😉

А тим часом, на сьогодні в мене все!

Дякую за твій час 😌


Якщо ти насолоджуєшся моїми постами, донат допоможе мені віддавати більше часу на створення якісного контенту 🤗
5408810040380635

#pattern #web #js #python #php
🔥10❤‍🔥3🤩2❤1
ФАБРИЧНИЙ МЕТОД

Ось приклад використання фабрики методів на Python:

# Класи для створюваних об'єктів
class Dog:
def __init__(self, name):
self.name = name

def speak(self):
return "Woof!"

class Cat:
def __init__(self, name):
self.name = name

def speak(self):
return "Meow!"

# Фабричний метод для створення тварин
class AnimalFactory:
def create_animal(self, animal_type, name):
if animal_type == "dog":
return Dog(name)
elif animal_type == "cat":
return Cat(name)
else:
raise ValueError("Invalid animal type")

# Використання фабрики методів
factory = AnimalFactory()

dog = factory.create_animal("dog", "Buddy")
print(dog.speak()) # Виведе: Woof!

cat = factory.create_animal("cat", "Whiskers")
print(cat.speak()) # Виведе: Meow!

У цьому прикладі AnimalFactory є фабричним методом

Він має метод create_animal, який приймає тип тварини (dog, або cat) й ім’я для створення відповідного об’єкта (у нашому випадку: "Buddy" та "Whiskers")

Після створення об’єктів ми можемо викликати метод speak(), який повертає рядок із звуком, який видає тварина (голос ми передали через у кожному класі окремо) 😉

АБСТРАКТНА ФАБРИКА

Ось приклад використання абстрактної фабрики на Java:

// Класи для створюваних об'єктів
interface Shape {
void draw();
}

class Circle implements Shape {
public void draw() {
System.out.println("Drawing a circle");
}
}

class Rectangle implements Shape {
public void draw() {
System.out.println("Drawing a rectangle");
}
}

class Triangle implements Shape {
public void draw() {
System.out.println("Drawing a triangle");
}
}

// Абстрактна фабрика для створення геометричних фігур
interface ShapeFactory {
Shape createShape();
}

class CircleFactory implements ShapeFactory {
public Shape createShape() {
return new Circle();
}
}

class RectangleFactory implements ShapeFactory {
public Shape createShape() {
return new Rectangle();
}
}

class TriangleFactory implements ShapeFactory {
public Shape createShape() {
return new Triangle();
}
}

// Використання абстрактної фабрики
public class AbstractFactoryExample {
public static void main(String[] args) {
ShapeFactory factory;

// Створення кола
factory = new CircleFactory();
Shape circle = factory.createShape();
circle.draw(); // Виведе: Drawing a circle

// Створення прямокутника
factory = new RectangleFactory();
Shape rectangle = factory.createShape();
rectangle.draw(); // Виведе: Drawing a rectangle

// Створення трикутника
factory = new TriangleFactory();
Shape triangle = factory.createShape();
triangle.draw(); // Виведе: Drawing a triangle
}
}


У цьому прикладі інтерфейс Shape представляє геометричну фігуру, а його реалізації - Circle, Rectangle та Triangle - представляють конкретні фігури.

Абстрактна фабрика представлена інтерфейсом ShapeFactory, а його реалізації - CircleFactory, RectangleFactory та TriangleFactory - відповідають за створення відповідних фігур.

У AbstractFactoryExample ми створюємо різні фабрики та використовуємо їх для створення та виведення різних геометричних фігур.


Загалом, фабричний шаблон проектування є потужним інструментом для покращення організації коду та забезпечення його гнучкості 😌

Він знаходить своє застосування в різних областях програмування, від обробки даних до графічних інтерфейсів)


Якщо ти насолоджуєшся моїми постами, донат допоможе мені віддавати більше часу на створення якісного контенту 🤗
5408810040380635

#pattern #js #python #java
❤6🤩2😍2👍1
5. Map, Filter і Reduce:

Python надає вбудовані функції map, filter і reduce, які спрощують операції над послідовностями даних, такими як списки і кортежі!

І з ними можна робити наступні дії 👇

map - дія над кожним елементом в списку/кортежі

filter - фільтрування всіх елементів в списку/кортежі

reduce - з усіх значень списку/кортежа повертає якесь одне загальне значення (наприклад: сума чисел, чи одне речення, якщо в списку було декілька окремих слів)

Приклад:

numbers = [1, 2, 3, 4, 5]

# Використання map для подвоєння кожного числа в списку
doubled_numbers = list(map(lambda x: x * 2, numbers))

# Використання filter для відфільтрування парних чисел зі списку
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))

# Використання reduce для обчислення суми всіх чисел в списку
from functools import reduce
total = reduce(lambda x, y: x + y, numbers)

print("Подвоєні числа:", doubled_numbers)
print("Парні числа:", even_numbers)
print("Сума всіх чисел:", total)

6. Анонімні функції (lambda):

Python дозволяє створювати анонімні функції за допомогою ключового слова lambda

Це корисно для визначення невеликих функцій, які використовуються лише в один раз

Приклад:

# Використання анонімної функції для обчислення квадрата числа
square = lambda x: x * x
result = square(5)
print(result) # Виведе: 25


Які ж переваги функціонального програмування?

Переваги функціонального програмування:
1.) Покращену читабельність коду
2.) Зменшення багів від того, що великі функції становляться простіше
3) Спрощення тестування та розуміння коду

Однак!
Не завжди функціональний стиль є найкращим вибором, і його слід використовувати з обачливістю, особливо в контексті великих проектів 😉

У Python, функціональне програмування може бути потужним інструментом для вирішення багатьох завдань

Зрозуміння цих концепцій допоможе тобі покращити свій код і зробити його більш структурованим та ефективним 😌

Так що, навчайся!

І побачимось в наступних постах 🔥


Якщо ти насолоджуєшся моїми постами, донат допоможе мені віддавати більше часу на створення якісного контенту 🤗
5408810040380635

#python


А також хочу нагадати про акцію, яка зараз іде на мій Фронтенд курс 😉

Дивись не пропусти))
❤4🔥2🤩2👏1
Вітаю! 😃

Генератори у Python: основи та ітератори! 🐍

Генератори у Python - це функції, які дозволяють створювати послідовність значень на льоту! Вони використовуються для створення ітераторів у Python

А от ітератори - це об’єкти, які дозволяють доступатися до послідовності елементів один за одним) Важливо в темі про генератори, оскільки генератори це спосіб створювати ітератори автоматично

Саме слово “yield” в Python грає важливу роль у генераторах 😉 Воно перекладається як “вихід” і дозволяє функції генератора повертати значення в будь-який момент виконання циклу) Це робить генератори потужними, оскільки можливо виводити значення по одному, без необхідності зберігати всю послідовність у пам’яті одразу

Отже, генератори у Python - це зручний спосіб створення послідовностей значень, а слово “yield” дозволяє повертати значення з циклу в будь-який час!

Звертайся, якщо потрібно ще додаткову інформацію! 😊

#python
🔥3👍1🤩1
Вітаю! 😃

Ти коли-небудь чув про TensorFlow? 🤔

TensorFlow - це потужна бібліотека для машинного навчання!

Розроблена Google, вона дозволяє створювати складні моделі ШІ!

Захоплююче, правда?)

Але навіщо вона потрібна? 😃

TensorFlow допомагає в розробці та тренуванні моделей ШІ!

Це включає в себе все: від розпізнавання мови до обробки зображень!

Справжній магічний інструмент у світі програмування!)

Як її використовувати? 😉

Для початку тобі потрібно встановити TensorFlow

Це можна зробити через pip:


pip install tensorflow


Після цього ти можеш створювати моделі, використовуючи її API!

Кодування з TensorFlow - це справжнє задоволення!)

Коли вона практично використовується? 😊

TensorFlow широко використовується в індустрії та наукових дослідженнях!

Це включає автономні автомобілі, медичну діагностику та багато іншого!

Хіба це не вражає?) 😃

Як часто її використовують? 😉

TensorFlow - одна з найпопулярніших бібліотек для машинного навчання!

Вона використовується компаніями та дослідниками по всьому світу!

Неймовірно, чи не так?) 😃

Ну що ж) на сьогодні це все 😉

#python #tensorflow #machinelearning #AI
❤5❤‍🔥2🔥1
Вітаю! 😃

Сьогодні поговоримо про обробку помилок у Python! 🐍

Обробка помилок - це критично важлива частина програмування!) 🛠️

Чому це так важливо? 💡

Тому що вона допомагає твоєму коду граціозно впоратися з непередбачуваними ситуаціями 😉

Як це працює в Python? 🤔

В Python для цього є конструкція try-except 🚀

Спершу код в блоку try виконується)

Якщо все гаразд - чудово! 😊

Але якщо виникає помилка, виконання переходить до блоку except 😲

Ось приклад:


try:
number = int(input("Введіть число: "))
result = 10 / number
except ValueError:
print("Це не число!")
except ZeroDivisionError:
print("На нуль ділити не можна!")


Такий підхід дозволяє твоєму коду бути стійким до помилок та непередбачуваних даних 🛡️

Коли обробка помилок найбільш корисна? 🧐

У випадках, коли ти працюєш з файлами, мережевими запитами або будь-якими даними, які можуть бути непередбачуваними чи відсутніми!

Наприклад, при зчитуванні файлу або при спробі підключення до сервера 😱

Як часто використовують обробку помилок? 🤷‍♂️

Досить часто! Це фундаментальний аспект написання надійних і безпечних програм на Python! 💪

Так що, використовуй обробку помилок, щоб зробити свої програми більш міцними та зрозумілими для користувачів) 🚀

На цьому сьогодні все! Пам'ятай, що програмування - це не тільки код, а й вміння обробляти помилки! 😉

Бажаю тобі успіхів у твоєму програмувальному шляху! 🌟

#python
❤5🤩2🔥1