개발(합니다) (397) 썸네일형 리스트형 [flutter-00] 플러터를 공부해야 하는 이유 구글은 Fuchsia OS 프로젝트를 가지고 있었습니다. 구글은 이미 시장을 점유하고 있는 안드로이드오, 크롬을 가지고 있습니다. Fuchsia는 역사 2016년 8월 공식 발표 없이 깃허브에 공유 Zircon 마이크로 커널을 기반으로 하고 있음 2017년 11월 swift 지원 계획을 발표 2018년 1월 필셀북을 공식 fuchsia 테스트 디바이스로 추가 2019년 1월 안드로이드 앱 구동 가능성 발표 2019년 5월 구글 I/O에서 fuchsia가 언급됨 2019년 7월 1일 fuchsia 공식 홈페이지 오픈 커널이란 OS에서 핵심적인 하드웨어와 소프트웨어를 연결하는 역할을 합니다. 마이크로 커널 : fuchsia 하드웨어와 커널을 구성하고 필요한 기능은 필요할 때만 모듈을 추가해서 사용하는 방식 .. [java-기초-14] 람다식 람다식은 익명 함수를 생성하기 위한 식으로 객체 지향 언어보다는 함수 지향 언어에 가깝다. 객체 지향 프로그래밍에 익숙한 개발자들은 다소 혼란스러울 수 있지만, 자바에서 람다식을 수용한 이유는 자바 코드가 매우 간결해지고, 컬렉션의 요소를 필터링하거나 매핑해서 원하는 결과를 쉽집계할 수 있기 때문인다. 람다식의 형태는 매개 변수를 가진 코드 블록이지만, 런타임 시에는 익명 구현 객체를 생성한다. 람다식 -> 매개 변수를 가진 코드 블록 -> 익명 구현 객체 // 익명 구현 객체 생성의 전형적인 코드 Runnable runnalbe = new Runnerable() { pulic void run() { ... } } // 람다식으로 표현 Runnable runnable = () -> { ... } 람다식을.. [java-기초-13] 제네릭 왜 제네릭을 사용하는가? java 5부터 제네릭 타입이 새로 추가되었고 제네릭 타입을 이용해 잘못된 타입이 사용될 수 있는 문제를 컴파일 과정에서 제거할 수 있다. 제네릭은 널리 사용된다. 컬렉션, 람다식, 스트림, NIC java API docs 클래스, 인터페이스, 메서드를 정의할 때 타입을 파라미터로 사용 제네릭의 특징 컴파일 시 강한 타입 체크를 할 수 있다. 타입 변환을 제거 한다. List list = new ArrayList(); list.add("hello"); String str = (String) list.get(0); List list2 = new ArrayList(); list.add("hello"); String str2 = list2.get(0); 제네릭 타입 : class, I.. DB 버전를 관리 코드로 하는 방법 - LIQUIBASE 소스 형상 관리는 git이나 svn으로 하고 ppt나 보고서도 버전을 관리를 합니다. DB에 대한 형상관리를 하는 방법이 없는지 고민하다가 프로젝트를 하면서 접하게 된 LIQUIBASE입니다. 리퀴베이스는 DB 스키마 변경을 버전별로 관리 할 수 있는 oepn source 입니다. - 주의 사항 - 리퀴베이스를 적용한 프로젝트의 데이터베이스 스키마를 직접 수정하는 일은 절대 없어야 합니다. 특징 데이터베이스 변경 문서 생성 기존 데이터베이스에서 시작할 수 있는 change log 생성 기능 데이터베이스끼리 비교 기능 데이터베이스에 반영한 update를 rollback 기능 자동 업데이트 또는 DBA가 직접 적용할 수 있는 sql 스크립트 생성 안전한 클러스터 데이터베이스 업데이트 운영 데이터와 다양한 테.. [java-기초-12] 멀티 스레드 멀티 스레드 개념 프로세스와 스레드 운영체제에서는 실행 중인 하나의 애플리케이션을 프로세스라고 부르며 사용자가 애플리케이션을 실행하면 운영체제로부터 실행에 필요한 메모리를 할당 받아 애플리케이션의 코들르 실행하는데 이것을 프로세스라고 부른다. 예를 들어 Chrome 브라우저를 두 개 실행했다면 두 개의 Chrome 프로세스가 실행 된 것이다. 작업 관리자에서 확인 할 수 잇듯 이 1개의 프로그램의 실행으로 프로세스가 생성되고 그 안에서 스레드가 구동되고 있다. 멀티 태스킹은 두 가지 이상의 작업을 동시에 처리하는 것을 말하고 운영체제는 멀티 태스킹을 할 수 있도록 CPU 및 메모리 자원을 프로세스마다 적절히 할당해주고, 병렬로 실행시킨다. 멀티 프로세스들은 운영체제에서 할당 받은 자신의 메모리를 가지고 .. [git] fatal: early EOF이거나 error: RPC failed; HTTP 413 curl 22 The requested URL returned error: 413 상황 - git clone을 할 때는 early EOF라는 오류를 뿜고 실패했다. - git push를 할 때는 error: RPC failed; HTTP 413 curl 22 The requested URL returned error: 413라는 실패를 했다. 문제 파악 git에는 기본적으로 업로드, 다운로드 할 수 있는 사이즈가 설정으로 정해져있는데 이보다 크게 pull이나 push를 할 경우 발생한다. 메모리가 부족하거나 용량이 부족하면 발생한다. 해결 방법 1. .gitconfig 파일 생성 git을 가져올 폴더에서 .gitconfig 파일을 생성하고 환경 설정을 작성한다. [core] packedGitLimit = 2048m packedGitWindowSize = 2048m [pack] delt.. [git] remote: The project you were looking for could not be found. 상황 git 아이디가 여러개 있어서 다른 아이디로 레파지토리를 clone을 했더니 "The project you were looking for could not be found." 라는 오류가 발생했다. 문제 파악 project를 찾지 못하는 상황인데 private repository라서 찾지 못하는거다. PC에 있는 로컬 클라이언트 git 자격 증명 캐싱과 관련이 있다. > git clone --global user.name > git clone --global user.email 글로벌로 자격증명이 되어 있어서 찾지 못하는걸로 확인했다. 해결 방법 URL로 가져올 때 ID를 추가해서 clone하면 자격증명을 다시 할 수 있다. 제공 되는 형태 : https://gitlab.com/{userID}/{r.. [java-기초-11-02] 기본 API 클래스 정규 표현식과 Pattern 클래스 문자열이 정해져 있는 형식으로 구성되어 있는지 검증해야 하는 경우에 정규표현식을 사용하면 된다. 기호 설명 [ ] 한 개의 문자 [abc] a, b, c 중 하나의 문자 [^abc] a, b, c 이외의 하나의 문자 [a-zA-Z] a~z, A~Z 중 하나의 문자 \d 한 개의 숫자, [0-9]와 동일 \s 공백 \w 한 개의 알파벳 또는 한 개의 숫자, [a-zA-Z_0-9]와 동일 ? 없음 또는 한 개 * 없음 또는 한 개 이상 + 한 개 이상 {n} 정확히 n개 {n,} 최소한 n개 {n,m} n개에서부터 m개까지 ( ) 그룹핑 - (02|010)-\d{3,4}-\d{4} 기호 설명 (02|010) 02 또는 010 - - 포함 \d{3,4} 3자리 또는 4자리 .. 이전 1 ··· 25 26 27 28 29 30 31 ··· 50 다음