Playwright를 사용하기 위해 짧게나마 notion에 정리내용을 블로그에 옮김 Truthy : 참 같은 값Falsy : 거짓 같은 값//조건 식에 빈 문자열 a를 넣으니 false로 인식해서 FALSE가 출력됨let a = "";if (a) { console.log("TRUE");} else { console.log("FALSE");}//조건 식에 비어있지 않은 문자열 a를 넣으니 true로 인식해서 TRUE가 출력됨let a = "string";if (a) { console.log("TRUE");} else { console.log("FALSE");}이 처럼 Javascript에서는 조건문에 boolean 형식이 아닌 변수를 넣어도 참이나 거짓으로 인식되는 속성이 있음.실제로 boolean..
app.getProgress().getStudyDuration()과 같이 호출 할 때 progress가 null인 경우 NullPointerException가 발생하는 것이 흔한 일이었음그래서if (progress ≠ null) {}과 같이 null 체크를 해줘야했음.public Progress getProgress() { if (this.progress != null) { throw new IllegalStateException(); } return progress;}위와 같이 null 인 경우 에러를 throw 하기도 했었으나 좋은 사용 예는 아님Java8에서 부터는 비어있는 값이 있을 경우 Optional을 이용해서 처리할 수 있음public Optional getProgresS() { retur..
함수를 파라미터로 넘겨 활용할 수 있다?Function값을 하나 받아서 하나의 값을 리턴하는 형태R apply(T t)package learn;import java.util.function.Function;public class Plus10 implements Function { @Override public Integer apply(Integer integer) { return integer + 10; }}//이렇게 클래스를 만들어서 사용할 수도 있고Plus10 plus10 = new Plus10();System.out.println(plus10.apply(1));//아래와 같이 람다식으로 요약해서 사용할 수 있음.Function plus10 = (i) -> i + 10;함..
StreamStream은 데이터를 담고 있는 저장소(컬렉션)가 아니다.Functional in nature, 스트림이 처리하는 데이터 소스를 변경하지 않는다.스트림으로 처리하는 데이터는 오직 한번만 처리한다.무제한일 수도 있다. (Short Circuit 메소드를 사용해서 제한할 수 있다.)중개 오퍼레이션은 근본적으로 lazy하다.손쉽게 병렬 처리할 수 있다..parallelStream()을 사용하면 JVM이 병렬처리parallelStream을 사용한다고 무조건 빨라지는 것이 아니니 적절히 사용해야함스트림 파이프 라인0 또는 다수의 중개 오퍼레이션 (intermediate operation)과 한개의 종료 오퍼레이션 (terminal operation)으로 구성한다.스트림의 데이터 소스는 오직 터미널 오..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cl2kHp/btsIHIon0gg/6wFTRbG284WVLTD0AmcLwk/img.png)
사내에서 필요한 도구를 Chrome Extension으로 만들어봤었는데 Desktop Application 형태로 만들려면 어떤 도구가 적합할까 생각하다가 찾았던 Electron.notion에 메모했던 내용을 블로그로 옮겨본다. 기본적으로 npm 설치가 선행되어야함 프로젝트 시작하기1. 적당한 경로에 작업 폴더를 생성2. 작업 폴더에서 npm init 명령어 실행3. 명령어 실행 후 설정 값들을 입력할 때 다른 값들은 기본 값을 사용하되 entry point는 main.js로 입력Electron Application에서 main.js를 entry point로 사용하는 것은 많은 튜토리얼에서 사용하는 관습Electron Application은 두 가지 주요 프로세스로 구성됨 (Main / Renderer..
제목은 거창하지만 그냥 짧은 소감..2017년 웹 UI 테스팅을 위해 처음 Selenium을 사용했었다.당시 반복되는 테스트를하며 이걸 사람이 왜 이렇게 해야되나 싶어 찾았던 것이 Selenium.브라우저별 드라이버를 설정하고 브라우저별로 테스트 코드를 실행했었는데,당시 내 필요를 충족하는 유일한 도구가 Selenium이라 불편함은 일부 있지만 유용하게 사용했었다.특히 IE를 지원해야하는 상황에서 IE까지 드라이버를 통해 테스팅할 수 있었으니.. 많은 도움이 되었다. 그리고 수년이 지나 2023년.계속해서 Selenium을 사용해야할까? 고민이 되었다.프로젝트 환경을 설정하면서 영.. 번거롭다는 생각이 들었다.그러다 여러 기업들의 기술 블로그를 보며 많이 언급되던 Playwright를 알게되었다. npm..
- Total
- Today
- Yesterday
- Xcode
- JSP
- JavaScript
- 제이쿼리
- SQL
- Objective C
- Object C
- MacOS X
- MySQL
- Spring Framework
- 자바
- 오브젝트 C
- iPhone
- Objective-C
- 아이폰
- iBATIS
- 아이폰 어플리케이션
- zero
- iOS 개발
- 오브젝티브 C
- 자바스크립트
- Programming
- Java
- oracle
- Spring
- tomcat
- IT
- MAC OSX 10.7
- jQuery
- 아이폰 개발
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |