본문 바로가기
  • GDG on campus Ewha Tech Blog

3-1기 스터디82

[9주차] 고루틴과 동시성 프로그래밍, 채널과 컨텍스트 Chapter 24. goroutine 24.1 스레드란? 고루틴: 경량 스레드 함수나 명령을 동시에 실행할 때 사용 💡 컨텍스트 스위칭 비용 X 원래 CPU는 한 번에 하나의 스레드만 처리할 수 있어서, 효율성을 위해 여러 스레드를 전환하면 ‘컨텍스트 스위칭’ 비용이 발생한다. 적정 개수를 넘어 한 번에 너무 많은 스레드를 수행하게 되면 성능이 저하되어 주의해야 한다. 하지만 Go 언어에서는 CPU 코어마다 OS 스레드를 하나만 할당해서 사용하므로, 컨텍스트 스위칭 비용이 발생하지 않는다. 이를 가능하게 해주는 것이 고루틴이다. 24.2 고루틴 (goroutine) 모든 프로그램은 고루틴을 최소 하나 가짐 (→ 메인 루틴) go 함수_호출 //메인 루틴 외에 고루틴 추가 생성 package main i.. 2022. 1. 20.
[7주차] Function 오브젝트, Argument 7주차에는 의 Function 오브젝트와 Argument의 개념을 공부했습니다. 😎 주차진도강의시간(분)기간 7주차 0. 중고급 강좌 소개 범위 1. Function 오브젝트, 2. Argument 115 21년 12월 24일~21년 12월 30일 Function 형태 빌트인 Function 오브젝트 Function.prototype.call() function 오브젝트 인스턴스이지만, new 연산자로 생성한 인스턴스와 구분하기 위해 강좌에서는 function 오브젝트로 표기 function 인스턴스 new 연산자를 사용하여 연결된 메소드로 생성 function 오브젝트 생성 엔진이 function 키워드를 만나면 빌트인 Function 오브젝트의 prototype에 연결된 메소드로 function 오브.. 2022. 1. 17.
[10주차] 람다로 프로그래밍(4) Ch05 람다로 프로그래밍 📌 학습목표 • 람다 식과 멤버 참조 • 함수형 스타일로 컬렉션 다루기 • 시퀀스: 지연 컬렉션 연산 • 자바 함수형 인터페이스를 코틀린에서 사용 • 수신 객체 지정 람다 사용 람다 식(lambda expression) 또는 람다는 다른 함수에 넘길 수 있는 작은 코드 조각을 뜻한다. 람다를 사용하면 공통 코드 구조를 라이브러리 함수로 뽑아낼 수 있다. 5.1 람다 식과 멤버 참조 5.1.1 람다 소개: 코드 블록을 함수 인자로 넘기기 함수형 프로그래밍에서는 함수를 값처럼 다룬다. 또한, 클래스를 선언하고 그 클래스의 인스턴스를 함수에 넘기는 것이 아니라 함수 자체를 다른 함수에 전달한다. → 이때, 람다 식을 사용하면 함수를 선언할 필요가 없고 코드 블록을 직접 함수의 인자로.. 2022. 1. 16.
[8주차] 2018 Data Science Bowl - 세포 핵 탐지 자동화 알고리즘 이번 주에는 'Teaching Notebook for Total Imaging Newbies' 커널을 필사하면서 '2018 Data Science Bowl'에서 세포 핵 탐지를 자동화하는 알고리즘 코드를 통해 object segmentation에 대해 공부했습니다. https://www.kaggle.com/stkbailey/teaching-notebook-for-total-imaging-newbies Teaching notebook for total imaging newbies Explore and run machine learning code with Kaggle Notebooks | Using data from 2018 Data Science Bowl www.kaggle.com 본 대회는 핵 탐지를 .. 2022. 1. 16.
[9주차] 람다로 프로그래밍(3) 5.0 람다식 람다식 (람다) : 다른 함수에 넘길 수 있는 작은 코드 조각 람다의 특징 쉽게 공통 코드 구조를 라이브러리 함수로 뽑아낼 수 있음 코틀린 표준 라이브러리에서 많이 사용함 컬렉션 처리 대치 수신 객체 지정 람다 : 람다 선언을 둘러싸고 있는 환경과는 다른 상황에서 람다 본문을 실행할 수 있음 5.1 람다 식과 멤버 참조 5.1.1 람다 소개 : 코드 블록을 함수 인자로 넘기기 일련의 동작을 변수에 저장하거나 다른 함수에 넘겨야하는 경우 자바에서는 무명 내부 클래스 이용 ⇒ 단점 : 번거로움 ⇒ 예제) 무명 내부 클래스로 리스너 구현하기 /*자바*/ button.setOnClickListener(new onClickListener(){ @Override public void onClic(Vi.. 2022. 1. 9.
[7주차] immer를 사용해 쉽게 불변성 유지하기 GDSC FE-Toy Project Study Plan 'React를 다루는 기술' Ch11, 12 공부 및 실습 진행 [Week 7] 12/23 발표자 Ch11. 컴포넌트 성능 최적화 - 장효신 Ch12. immer를 사용하여 더 쉽게 불변성 유지하기 - 김중현 Ch12_immer를 사용해 쉽게 불변성 유지하기 immer를 사용하는 이유 불변성을 유지하기 위해, 전개 연산자와 배열 내장 함수를 사용해 배열이나 객체를 복사하고 새로운 값을 덮어쓸 수 있다. 그러나 객체의 구조가 커지고 깊어지면, 불변성을 유지하면서 값을 업데이트하기 매우 힘들어진다. 기존의 다른 값들은 유지하면서 값 하나를 업데이트하기 위해 여러 줄의 코드를 작성해야 하는 경우가 생긴다. → immer 라이브러리를 이용하면 구조가 복잡한.. 2022. 1. 7.