라이브러리프레임워크는 소프트웨어 개발에서 자주 사용되는 개념으로, 둘 다 코드 재사용을 통해 개발 속도를 높이고 효율성을 제공하지만, 그 동작 방식과 개발자와의 관계에서 중요한 차이가 있습니다.


라이브러리 (Library)

  • 정의: 특정 기능을 수행하기 위한 코드의 모음.
  • 사용 방식: 개발자가 필요할 때 호출(사용)하는 방식으로 동작합니다.
    • 개발자가 코드 흐름을 제어합니다.
    • 예를 들어, 특정 함수를 호출하거나 객체를 생성하여 사용합니다.
  • 주요 특징:
    • 원하는 기능을 제공하는 도구 역할을 합니다.
    • 개발자가 프로그램의 전체 흐름을 제어하고 라이브러리를 필요할 때만 활용합니다.
  • :
    • Python의 pandas, NumPy, Matplotlib.
    • JavaScript의 Lodash, Moment.js.

라이브러리 사용 예시 (Python - requests 라이브러리):

import requests

response = requests.get('https://api.example.com/data')
print(response.json())

여기서 개발자가 직접 요청을 보내는 방식으로 사용됩니다.


프레임워크 (Framework)

  • 정의: 소프트웨어 개발을 위한 구조와 규칙을 제공하는 플랫폼.
  • 사용 방식: 프레임워크가 프로그램의 흐름을 제어하고, 개발자는 프레임워크의 규칙에 따라 필요한 코드를 작성합니다.
    • "제어의 역전(Inversion of Control, IoC)"이라는 개념에 기반합니다.
    • 프레임워크가 기본적으로 전체 애플리케이션의 흐름을 관리하며, 개발자는 그 안에 필요한 로직을 추가하는 방식입니다.
  • 주요 특징:
    • 특정한 개발 방식과 구조를 강제합니다.
    • 더 큰 범위의 작업(예: 애플리케이션 아키텍처, 데이터베이스 연결, 요청 처리 등)을 처리합니다.
    • 라이브러리를 포함하고 있을 수도 있습니다.
  • :
    • Python의 Django, Flask (웹 개발 프레임워크).
    • JavaScript의 React, Angular, Vue.js (프론트엔드 프레임워크).
    • Java의 Spring.

프레임워크 사용 예시 (Python - Django):

from django.http import HttpResponse

def my_view(request):
    return HttpResponse("Hello, World!")

여기서 프레임워크(Django)는 요청/응답 흐름과 서버 실행을 처리하고, 개발자는 특정 로직을 구현하는 데 집중합니다.


비교 요약

항목 라이브러리 프레임워크

항목 라이브러리 프레임워크
제어권 개발자가 제어권을 가짐 프레임워크가 제어권을 가짐
용도 특정 기능을 제공하는 도구 전체 구조와 애플리케이션 아키텍처 제공
유연성 필요할 때 호출, 자유로운 사용 가능 정해진 규칙과 구조를 따라야 함
예시 NumPy, pandas, requests Django, React, Angular

라이브러리는 단순히 도구 역할을 하고, 프레임워크는 개발의 뼈대를 제공합니다. 필요에 따라 적절히 선택해 사용하는 것이 중요합니다!

 

Pico Pro Maker Kit은 Raspberry Pi Pico 마이크로컨트롤러를 기반으로 한 개발 및 프로토타이핑 키트로, 전자공학, IoT, 로봇 공학 및 DIY 프로젝트를 탐구하려는 메이커, 취미가, 학생 및 전문가를 위한 도구입니다. 이 키트는 다양한 센서와 부품들을 포함하고 있어 프로젝트 아이디어를 쉽게 구현할 수 있도록 설계되었습니다.


Pico Pro Maker Kit의 구성품

  1. Raspberry Pi Pico:
    • RP2040 마이크로컨트롤러 기반.
    • 듀얼 ARM Cortex-M0+ 코어와 264KB RAM, 2MB 플래시 메모리.
    • USB 연결 및 GPIO 핀 제공.
  2. 프로토타이핑 관련 도구:
    • 브레드보드: 회로를 납땜 없이 설계하고 테스트할 수 있음.
    • 점퍼 와이어: 부품 간 연결을 위한 다양한 와이어(M/M, M/F 등).
    • 핀 헤더: Pico 보드에 쉽게 연결하기 위한 납땜용 핀.
  3. 센서 및 액추에이터:
    • 온도 및 습도 센서.
    • 빛 감지 센서(포토레지스터).
    • 동작 감지 센서(PIR 센서).
    • 서보 모터 또는 DC 모터.
  4. 디스플레이 모듈:
    • 작은 OLED 또는 LCD 디스플레이.
  5. LED 및 저항:
    • 다양한 색상의 LED.
    • 전류 제한용 저항.
  6. 버튼 및 스위치:
    • 푸시 버튼과 토글 스위치.
  7. 전원 관련 구성품:
    • USB 케이블(Raspberry Pi Pico 전원 공급용).
    • 배터리 홀더 또는 USB 전원 공급 장치.
  8. 추가 구성품:
    • 가변 저항기(포텐셔미터).
    • 부저 또는 피에조 스피커.
    • 기능 확장을 위한 IC.
  9. 문서 및 가이드:
    • 초보자를 위한 예제 프로젝트 및 단계별 가이드.
    • 데이터 시트와 설명서.

Pico Pro Maker Kit의 활용

  1. 교육 및 학습:
    • Python(MicroPython, CircuitPython) 및 C++ 언어를 통해 프로그래밍 학습.
    • 전자 회로 설계 및 테스트.
  2. 프로토타이핑:
    • 간단하고 빠르게 회로 및 임베디드 애플리케이션 개발.
  3. IoT 프로젝트:
    • Wi-Fi 및 블루투스 모듈을 추가하여 IoT 기기 제작.
  4. 로봇 공학:
    • 모터와 센서를 제어하여 간단한 로봇 제작.
  5. DIY 및 취미 프로젝트:
    • 자동화 도구, 맞춤형 가젯 또는 예술적 설치물 제작.

Pico Pro Maker Kit은 초보자부터 숙련된 개발자까지 누구나 쉽게 접근할 수 있는 키트입니다. 구매 전 자신의 프로젝트 요구 사항과 호환성(특히 MicroPython 및 CircuitPython 지원 여부)을 확인하세요.

https://github.com/lencx/Noi

 

GitHub - lencx/Noi: 🚀 Power Your World with AI - Explore, Extend, Empower.

🚀 Power Your World with AI - Explore, Extend, Empower. - lencx/Noi

github.com

커스터마이즈된 브라우저인 듯 한데 기본 브라우저와 별개로 쓰니 좋은 것 같음

도구 > 환경 설정 > 마크다운 사용 설정

기본적으로 해제 되어 있음

오래된 기존 글 https://bluesid.tistory.com/211

 

[Mac] 맥 외장 모니터 연결 시 화면 끄기

일반적인 노트북의 경우 외장 모니터를 연결 하였을 경우노트북의 메인 화면을 끄는 건 그냥 가능 하다. 근데 맥북의 경우 없... -_-; 예전에 찾았을 땐 명령어가 있었는데... 업데이트 된 이후에

bluesid.tistory.com

 

최근에 다시 DisableMonitor를 사용하려고 보니 안되길래 찾아보니

해당 git을 Fork해서 2021년까지 유지한 걸 발견

 

https://github.com/epalzeolithe/DisableMonitor-3.0

 

GitHub - epalzeolithe/DisableMonitor-3.0

Contribute to epalzeolithe/DisableMonitor-3.0 development by creating an account on GitHub.

github.com

https://github.com/epalzeolithe/DisableMonitor-3.0/releases

 

Releases · epalzeolithe/DisableMonitor-3.0

Contribute to epalzeolithe/DisableMonitor-3.0 development by creating an account on GitHub.

github.com

 

Ventura 까지 잘 사용이 됨

+ Recent posts