티스토리 블로그 좋아지고 있네요~

Posted by HULIA(휴리아)
2019. 10. 21. 22:51 뒷이야기들/서비스

네이버 블로그와 비교해서 글도 이쁘고 쓰고 사진 올리는게 너무 힘들었는데요~

 

https://notice.tistory.com/2478

 

[Beta] 새 에디터를 소개합니다.

오래 기다리셨습니다. 안녕하세요 티스토리팀입니다. 새 에디터 오픈 소식으로 인사드립니다. 에디터는 티스토리팀의 오랜 숙제였습니다. 지난 '2019년에 달라지는 티스토리' 공지에서 안내드린 대로 보다 나은..

notice.tistory.com

2019년 3월 27일 에디터가 업데이트 되었네요^^

 

사진 올리는것만 잘되어도 확실히 전보다 나은듯 하네요

 

아직 네이버 블로그에 비교해서 아직은 따라가야할 게 많지만 차차 나아지리라 생각합니다

 

PC나 앱둘다 수정가능하게만 되면 네이버블로그와 비교해서 어느정도 따라온거라 생각됩니다~ㅎ

 

그러면 티스토리도 제 주력 블로그가 될 수 있을 것 같네요~ㅎ

'뒷이야기들 > 서비스' 카테고리의 다른 글

골드스푼 앱 사용후기(남자편)  (0) 2020.07.16
여보야 앱 사용 후기  (0) 2020.07.09
유틸리티 프로그램 조사  (0) 2017.02.23
IT제품 하드웨어 관련 사이트  (0) 2017.02.18
오픈 API 출처 정리  (0) 2017.02.12

코틀린이란

Posted by HULIA(휴리아)
2019. 8. 24. 23:20 뒷이야기들/스터디히스토리강의

Do it 코틀린 프로그래밍 책에서 참고

 

자바가 있는데 왜 코틀린을 배워야 하나요?

코틀린은 자바에 없던 널검사, 코루틴, 고차함수나 람다식과 같은 기능을 제공합니다

이 기능들은 대부분 안전하고 효율적인 프로그래밍을 위해 만들어졌으며 대부분의 현대 언어가 가지고 있는 특징이므로 프로그래밍 실력 향상을 위해 꼭 공부하기를 권장합니다

 

자바로 작성한 안드로이드 애플리케이션을 코틀린으로 쉽게 바꿀 수 있나요?

코틀린은 자바와 완벽하게 호환됩니다. 그래서 코틀린으로 작성한 프로그램에 자바의 방대한 라이브러리를 그대로 추가할 수도 있습니다. 심지어 안드로이드 스튜디오에서는 자바를 코틀린으로 변환하는 기능도 제공합니다

 

코틀린을 상용 안드로이드 애플리케이션에 바로 도입해도 될까요?

코틀린은 에버노트, 트렐로, 코세라 등과 같은 여러 유명 기업의 안드로이드 애플리케이션에 적용되고 있습니다. 그만큼 안정성이 입증된 언어입니다. 또 구글이 코틀린을 안드로이드 공식 언어로 채택했으므로 앞으로 코틀린은 안드로이드 애플리케이션 개발 필수 언어가 될 것 입니다

 

코틀린은 인텔리제이 IDEA라는 통합개발환경으로 유명한 JetBrains에서 개발

구글의 안드로이드 스튜디오도 인텔리제이 IDEA기반이며 코틀린 언어를 공식으로 지원

 

코틀린의 용도(멀티 플랫폼 언어)

-Kotlin/JVM : 자바 가상 머신에서 동작하는 애플리케이션을 만들 수 있다

-Kotlin/JS : 자바스크립트로 웹 브라우저에서 동작하는 애플리케이션을 만들 수 있다

-Kotlin/Native : LLVM 컴파일러를 이용하여 여러 플랫폼을 타깃으로 하는 애플리케이션을 만들 수 있다

 

코틀린의 장점

1)자료형 오류를 미리 잡을 수 있는 정적 언어

코틀린은 프로그램이 컴파일될때 자료형을 검사하여 확정하는 정적 언어입니다. 즉 자료형 오류를 초기에 발견할 수 있어 프로그램의 안정성이 좋아집니다

2)널 포인터 예외로 인한 프로그램의 중단을 예방할 수 있습니다

널 포인터 예외(NullPointerException)는 프로그램이 실행되는 도중에 발생하기 때문에 언제 어디서 어떻게 발생할지 아무도 알 수 없습니다. 오랫동안 프로그래머의 골치를 아프게 만들었지만 코틀린에서는 예방할 수 있습니다

3)아주 간결하고 효율적입니다

코틀린은 여러가지 생략된 표현이 가능한 언어입니다. 그래서 다른 언어보다 훨씬 간결하고 효율적으로 코딩할 수 있습니다.

4)함수형 프로그래밍과 객체 지향 프로그래밍이 모두 가능합니다.

함수를 변수에 저장하거나 함수를 다른 함수의 매개변수로 넘길 수 있는 함수형 프로그래밍과 클래스를 사용하는 객체 지향 프로그래밍을 둘다 할 수 있습니다

5)세미콜론을 생략할 수 있습니다

코드를 작성할때 줄 마지막에 사용하던 세미콜론을 생략할수도 있습니다

 

 

리액티브 프로그래밍이란?

Posted by HULIA(휴리아)
2019. 8. 24. 22:46 뒷이야기들/스터디히스토리강의

코틀린 리액티브 프로그래밍 책(2019)에서 참고

 

 

리액티브 프로그래밍은 데이터 스트림과 변경 사항 전파를 중심으로 하는 비동기 프로그래밍 패러다임

간단히 말하면, 데이터와 데이터 스트림에 영향을 미치는 모든 변경사항을 관련된 모든 당사자들, 예를 들면 최종 사용자나 컴포넌트, 하위 구성요소, 또는 어떻게든 연결돼 있는 다른 프로그램 등에게 전파하는 프로그램을 리액티브 프로그램이라고 한다

 

예를 들어 엑셀에서 한셀에 식이 있고 다른셀에는 식에서 쓰는 값이 있을때 값을 바꾸면 식의 결과도 자동으로 바뀌는데 이것을 리액티브라고 한다

 

함수형 리액티브 프로그래밍을 적용해야 하는 이유

1)콜백 지옥의 제거

콜백은 미리 정의된 이벤트가 발생할 때 호출되는 메서드다. 인터페이스를 콜백메서드와 함께 전달하는 매커니즘을 콜백 매커니즘이라고 부른다.

2)오류 처리를 위한 표준 매커니즘

3)간결해진 스레드 사용

스레드를 코틀린에서 자바에 비해 더 쉽게 사용할 수 있지만, 여전히 복잡하다. 리액티브 프로그래밍을 통하면 한층 더 쉽게 사용할 수 있다

4)간단한 비동기 연산

스레드와 비동기 작업은 서로 연관돼 있다. 스레드 사용이 쉬워질수록 비동기 연산도 쉬워진다.

5)전체를 위한 하나, 모든 작업에 대해 동일한 API

리액티브 프로그래밍, 특히 RxKotlin은 간단하고 직관적인 API를 제공하는데 네트워크 호출, 데이터베이스 접근, 계산 또는 UI 연산 등 어느 곳에서나 어떤 것을 대상으로든 사용할 수 있다

6)함수형 접근

리액티브 프로그래밍을 사용하면 함수형 접근 방법을 취해서 가독성이 좋은 선언적 코드를 작성할 수 있다

7)유지 보수 가능하고 테스트 가능한 코드

가장 중요한 점으로 리액티브 프로그래밍을 올바르게 수행하면 프로그램의 유지보수와 테스트가 한층 더 쉬워진다

 

리액티브 선언(http://www.reactivemanifesto.org)은 네가지 리액티브 원리를 정의해 놓은 문서

 

The Reactive Manifesto

Responsive: The system responds in a timely manner if at all possible. Responsiveness is the cornerstone of usability and utility, but more than that, responsiveness means that problems may be detected quickly and dealt with effectively. Responsive systems

www.reactivemanifesto.org

리액티브 선언의 4원칙

1)응답성(Responsive)

시스템은 증각 응답해야 한다. 응답성 있는 시스템은 신속하고 일관성 있는 응답시간을 유지해 일관된 서비스 푸짐을 제공한다

2)탄력성(Resilent)

시스템에 장애가 발생하더라도 응답성을 유지해야 한다. 탄력성은 복제(replication), 봉쇄(containement), 격리(isolation), 위임(delegation)에 의해서 이루어진다. 장애는 각 컴포넌트 내부로 억제돼 각 컴포넌트들을 서로 격리시키는데, 그래서 하나의 컴포넌트에 장애가 발생하더라도 전체 시스템에 영향을 끼치지 못하게 된다

3)유연성(Elastic)

리액티브 시스템은 작업량이 변하더라도 그 변화에 대응하고 응답성을 유지해야 한다

리액티브 시스템은 상용 하드웨어 및 소프트웨어 플랫폼에서 효율적인 비용으로 유연성을 확보한다

4)메시지 기반(Message Driven)

탄력성의 원칙을 지키려면 리액티브 시스템은 비동기적인 메시지 전달에 의존해 컴포넌트들 간의 경계를 형성해야 한다

 

리액티브 스트림 표준 사양

http://www.reactive-streams.org 

 

http://www.reactive-streams.org

Reactive Streams Reactive Streams is an initiative to provide a standard for asynchronous stream processing with non-blocking back pressure. This encompasses efforts aimed at runtime environments (JVM and JavaScript) as well as network protocols. JDK9 java

www.reactive-streams.org

 

코틀린을 위한 리액티브 프레임워크

리액티브 프로그램을 작성하려면 라이브러리 또는 특정 프로그래밍 언어가 필요하다. 코틀린은 자바, 안드로이드와 완벽하게 상호 운용되며 멀티 플랫폼 애플리케이션을 위한 강력하고 유연한 프로그래밍 언어이기 때문에 코틀린을 리액티브 언어라고 볼 수는 없다(애초에 리액티브 언어라고 하는 프로그래밍 언어를 들어본 적이 없다)

 

그러나 도움이 되는 라이브러리가 있다

-RxKotlin

-Reactor-Kotilin

-Redux-Kotlin

-FunKTionale

-RxJava와 그외의 자바 리액티브 프레임워크도 코틀린과 함께 사용할 수도 있다(코틀린은 자바와 100% 상호 운용 가능하기 때문)

 

 

'뒷이야기들 > 스터디히스토리강의' 카테고리의 다른 글

암호화관련 조사  (0) 2021.01.26
코틀린이란  (0) 2019.08.24
마크다운 정의 장단점 사용법 정리  (0) 2019.04.28
react native 리액트 네이티브 스터디  (0) 2018.04.15
데브옵스(DEVOPS)란  (0) 2018.04.03

마크다운 정의 장단점 사용법 정리

Posted by HULIA(휴리아)
2019. 4. 28. 20:00 뒷이야기들/스터디히스토리강의

최근에 파이썬을 스터디 하면서 JUPYTER NOTEBOOK에서도 마크다운을 지원하고

티스토리 블로그에도 마크다운을 지원해서

앞으로 마크다운을 잘 쓰면 좋겠다는 생각에서 정리해 보았습니다

 

마크다운(Markdown)

:텍스트 기반의 마크업 언어로 2004년 존그루버에 의해 만들어짐

:쉽게 쓰고 읽을 수 있으며 HTML로 변환이 가능하며 특수기호와 문자를 이용한 매우 간단한 구조의 문법을 사용하며 웹에서도 보다 빠르게 컨텐츠를 작성하고 보다 직관적으로 인식가능

:마크타운이 각광받는 이유는 github.com 때문이다 github의 저장소의 대문 역할을 하는 README.md가 마크다운 형태로 작성되어져야 하기 때문

:장점-간결, 별도의 도구없이 작성가능, 텍스트파일이기때문에 버젼관리시스템을 통해 변경이력관리가능, 다양한 형태로 변환 가능

:단점-모두 HTML 마크업을 대신하지 못함

 

마크다운 사용법

1)헤더

-----------

2)제목글자(1~6종류)

#

##

###

####

#####

######

3)블럭인용

>

>>

>>>

4)목록

1.

2.

3.

5)단계별로 목록(*, -, +등 사용가능)

* 대한민국

  * 서울

     * 종로구

       * 을지로

6)수평선

* * *

***

*****

- - -

---------------------------------------

7)링크

[표시문구](실제URL)

<실제URL>

8)강조

*이탤릭 문구*

_이탤릭 문구_

**강조할 문구**

__강조할 문구__

~~취소문구~~

8)코드블럭

한줄사용시 : ` `

여러줄 사용시에 언어별로

```python

```

 

 

 

참조링크(티스토리 마크다운 문서)

https://tistory.io/entry/%ED%8B%B0%EC%8A%A4%ED%86%A0%EB%A6%AC-%EA%B8%80%EC%93%B0%EA%B8%B0-%EA%B0%80%EC%9D%B4%EB%93%9C-%EB%A7%88%ED%81%AC%EB%8B%A4%EC%9A%B4%EB%AC%B8%EB%B2%95

알고리즘 하노이의 탑 자바 코드 정리

Posted by HULIA(휴리아)
2018. 10. 9. 20:51 뒷이야기들/취업이직준비채용공고

public class Main {

int count = 0;//전체 횟수


public static void main(String[] args) {

// TODO Auto-generated method stub

Main main = new Main();

main.solution(3);

}

public int[][] solution(int n) {

int[][] answer = new int [(int)Math.pow(2, n)-1][2];

answer = moveHanoi(1,2,3,n,answer);

for(int i=0; i<answer.length; i++){

System.out.print(answer[i][0]+"->");

System.out.println(answer[i][1]);

}

System.out.println(Arrays.deepToString(answer));

return answer;


}

public int[][] moveHanoi(int initial, int middle, int ffinal, int n, int[][]answer){

if(n==1){

answer[count][0]=initial;

answer[count][1]=ffinal;

++count;

}

else{

moveHanoi(initial, ffinal, middle, n-1, answer);

answer[count][0]=initial;

answer[count][1]=ffinal;

++count;

moveHanoi(middle, initial, ffinal, n-1, answer);

}

return answer;

}

}



참고

https://blog.martinwork.co.kr/theory/2018/10/07/hanoi-algorithm.html

react native 리액트 네이티브 스터디

Posted by HULIA(휴리아)
2018. 4. 15. 17:46 뒷이야기들/스터디히스토리강의

react native는

react로 android와 ios로 동시에 native코드를 만들어주는 언어를 말한다

기존에 webview형식의 아이오닉과 phonegap과 비교되는 부분이다


개발환경

-nodejs

-npm을 통해서 설치를 하기 때문에 nodejs 설치를 기본적으로 해야 한다



https://facebook.github.io/react-native/docs/getting-started.html

리액트 네이티브 관련 정리 사이트(영문)

getting started로 테스트 진행하면 됨



getting started 방식은 두가지

1. expo를 이용해서 하는 방식(이 포스팅에서 활용한 방식)

2. 네이티브 code로 하는방식(이 포스팅에 기록하지 않음)



create-react-native-app 으로 프로젝트 생성시에 

npm-cli.js관련 오류나면

npm update후에 다시 진행하면 정상적으로 됨


만들어진 프로젝트에서 npm start를 하면 QR code가 뜨고 되고

expo.io에서 계정 생성후 스마트폰에서 expo관련 앱을 설치하고 앱에서 QR code를 찍으면 해당 페이지가 뜨게 된다


expo의 역할

-js파일로 빌드(리액트 네이티브 코드를 js파일로 변환)

-js파일을 웹페이지에 보여주는 역할(웹서버 역할)


리액트 네이티브 앱을 만들기 위해서 알아야 할 점

-반응형 웹관련

-css3 flex box layout로 검색해서 flex layout에 대해서 알아야 한다

정식명칭 css3 flexible box layout 

한글번역

:https://developer.mozilla.org/ko/docs/Web/CSS/CSS_Flexible_Box_Layout/Flexbox%EC%9D%98_%EA%B8%B0%EB%B3%B8_%EA%B0%9C%EB%85%90

https://developer.mozilla.org/ko/docs/Web/CSS/CSS_Flexible_Box_Layout

영어

:https://developer.mozilla.org/en-US/docs/Learn/CSS/CSS_layout/Flexbox

https://developer.mozilla.org/en-US/docs/Web/CSS/flex



*****쉽게 리액트 네이트브 앱을 실행할수 있는 방법(웹IDE로 리액티 네이티브 앱을 만들어 보기)

https://snack.expo.io에서 접속하면 웹 IDE가 생성되고 

run on device를 클릭하면 QR code가 뜨고

스마트폰에서 expo앱에서 QR code를 찍으면 실행된다

https://expo.io/snacks/@kimjaeeon


expo -> device 

https://docs.expo.io/versions/v27.0.0/introduction/project-lifecycle



무료 강의(영어)

https://academy.nomadcoders.co/courses/

https://programmers.co.kr/learn


리액트 네이티브 구조(한글 초보자용)

https://g6ling.gitbooks.io/react-native-tutorial-korean/content/chapter1.html


스위퍼 샘플소스

https://github.com/leecade/react-native-swiper



리액트 네이티브 한글 번역

https://seongbin9786.github.io/2018/02/10/%EB%A6%AC%EC%95%A1%ED%8A%B8%20%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0%207%20(SPA%201)/


리액트 네이티브 코드 재사용법

https://github.com/seongbin9786/reusable-react-code-examples


리액트 네이티브 기본 설명

https://github.com/seongbin9786/react-basic



react native를 사용한 초간단 커뮤니티 앱 제작

https://www.slideshare.net/taggon/react-native



https://velopert.com/3631

리액트 라이프사이클


react native app.js components 관련으로 구글 검색


부트스트랩처럼 UI객체들을 쉽게 편하게 쓸수 있는 모음

https://react-native-training.github.io/react-native-elements/docs/card.html


라이더스앱 IOS 개발기

http://woowabros.github.io/experience/2018/05/19/build-app-by-react-native.html


리액트 패턴 정리사이트

https://reactpatterns.com/


import, export 관련 내용

https://github.com/seongbin9786/es6-modules


리덕스 관련 정리

https://docs.google.com/document/d/1XSKQ7F9KtgVbJj3YM9KhieHLKrS92hD79pixNJM0mR8/edit?usp=sharing


IOS스크린샷 생성툴

https://app.shotbot.io/#/project


naivecoin 변역사이트

https://newpouy.github.io/


goalPlan 1인개발 관련 히스토리 정리

https://m.blog.naver.com/PostView.nhn?blogId=hidejj79&logNo=221256652881&proxyReferer=http%3A%2F%2Fm.facebook.com


리액트에서 주로 사용하는 디자인 패턴

https://krasimir.gitbooks.io/react-in-patterns/content/


React.js관련

https://velopert.com/reactjs-tutorials


세미나 정리

https://trello.com/b/XNk2ruv5/%EC%A2%8B%EC%95%98%EC%9D%84%EA%B1%B8-%EB%A6%AC%EC%95%A1%ED%8A%B8

데브옵스(DEVOPS)란

Posted by HULIA(휴리아)
2018. 4. 3. 10:32 뒷이야기들/스터디히스토리강의
AWS사이트에 발췌

데브옵스는
애플리케이션과 서비스를 빠른 속도로 제공할 수 있도록 조직의 역량을 향상시키는 문화 철학, 방식 및 도구의 조합입니다

데브옵스의 이점
-속도
작업속도가 빨리지므로, 고객을 위해 더 빠르게 혁신하고, 시장 변화에 더 잘 적응하고, 좀 더 효율적으로 비즈니스 성과를 창출가능
예)마이크로 서비스 & 지속적 전달
-신속한 제공
릴리즈의 빈도와 속도를 개선하여 제품을 더 빠르게 혁신하고 향상가능. 새로운 기능의 릴리즈와 버그 수정속도가 빨라질수록 고객의 요구에 더 빠르게 대응하여 경쟁우위를 강화가능
예)지속적 통합 & 지속적 전달
-안정성
최종 사용자에게 지속적으로 긍정적인 경험을 제공하는 한편 더욱 빠르게 안정적으로 제공할 수 있도록, 애플리케이션 업데이트와 인프라 변경의 품질을 보장합니다.
예)지속적 통합 & 지속적 전달 & 모니터링과 로깅
-확장가능
규모에 따라 인프라와 개발프로세스를 운영 및 관리
자동화와 일관성이 지원되므로 위험을 줄이면서 복잡한 시스템 또는 변화하는 시스템을 효율적으로 관리가능
예)코드형 인프라
-협업강화
주인 의식과 책임 같은 가치를 강조하는 데브옵스 문화 모델에서 좀 더 효과적인 팀을 구축
개발자와 운영 팀은 긴밀하게 협력하고 많은 책임을 공유하며 워크플로를 결합
이를 통해 비효율성을 줄이고 시간을 절약
-보안
제어를 유지하고 규정을 준수하면서 신속하게 진행가능
자동화된 규정준수정책, 세분화된 제어 및 구성 관리 기술을 사용함으로써 보안을 그대로 유지하면서 데브옵스 모델을 도입가능


데브옵스 문화 철학
데브옵스로 전환하기 위해서는 문화와 사고방식으 변화가 필요
간단하게 말하면 데브옵스는 개발과 운영이라는 두 팀 간의 장벽을 허무는 일


데브옵스 방식
조직이 소프트웨어 개발과 인프라 관리 프로세스의 자동화 및 간소화를 통해 더 빠르게 혁신할 수 있도록 지원하는 몇가지 주요 방식이 있습니다.

기본방식 중 하나는 소규모 업데이트를 자주 수행
소규모로 자주 업데이트하면 각 배포의 위험을 줄어듭니다. 팀에서 오류의 원인이 되는 최근 배포를 확인할 수 있으므로 더 빠르게 버그를 해결할 수 있습니다. 업데이트 소요 시간과 규모는 다르지만, 데브옵스 모델을 사용하는 조직은 기본 소프트웨어 개발 방식을 사용하는 조직보다 훨씬 더 자주 업데이트를 배포합니다.

조직은 마이크로 서비스 아키텍쳐를 사용하여 애플리케이션의 유연성과 혁신의 속도를 높일 수 있습니다.
마이크로 서비스 아키텍쳐는 복잡한 대규모 시스템을 간단하고 독립적인 프로젝트로 결합 해제합니다
애플리케이션은 많은 개별 구성 요소(서비스)로 분할되며, 각 서비스는 단일 목적 또는 기능으로 한정되고 피어 서비스 및 전체 애플리케이션과 별개로 운영됩니다.
이 아키텍쳐는 애플리케이션 업데이트를 위한 조정 오버헤드를 줄이고, 각 서비스가  이를 담당하는 작고 민첩한 팀과 연결되면 조직이 좀 더 신속하게 움직일 수 있습니다.

하지만 마이크로 서비스와 릴리스 빈도 증가의 조합은 배포수를 현저히 늘려 운영 문제로 이어질 수 있습니다. 따라서 지속적 통합 및 지속적 전달과 같은 데브옵스 방식을 사용하면 이러한 문제를 해결하고 조직이 안전하고 안정적인 방식으로 신속하게 업데이트를 제공가능
코드형 인프라 및 구성 관리와 같은 인프라 자동화 방식은 잦은 변경에 대해 컴퓨팅 리소스를 탄력적이고 대응적으로 유지하는데 도움이 됩니다. 또한 모니터링과 로깅의 사용도 엔지니어가 애플리케이션 및 인프라 성능을 추적하여 문제에 신속하게 대응할 수 있게 하는데 도움이 됩니다.

-지속적통합
자동화된 빌드 및 테스트가 수행된 후, 개발자가 코드 변경 사항을 중앙 리포지토리에 정기적으로 병합하는 소프트웨어 개발방식
지속적 통합의 핵심 목표는 버그를 신속하게 찾아 해결하고, 소프트웨어 품질을 개선하고, 새로운 소프트웨어 업데이트를 검증 및 릴리즈하는데 걸리는 시간을 단축하는 것

-지속적 전달
코드 변경이 프로덕션에 릴리즈할 수 있도록 자동으로 빌드, 테스트 및 준비되는 소프트웨어 개발 방식입니다.
빌드 단계이후의 모든 코드 변경 사항을 테스트 환경 및/또는 프로덕션 환경에 배포함으로써 지속적 통합을 확장합니다.
지속적 전달이 적절하게 구현되면, 개발자는 언제나 즉시 배포할 수 있고 표준화된 테스트 프로세스를 통과한 빌드 아티팩트를 보유하게 됩니다.

-마이크로 서비스 아키텍쳐
단일 애플리케이션을 작은 서비스의 집합으로 구축하는 설계 방식입니다.
각 서비스는 자체 프로세스에서 실행되고, 주로 HTTP기반 API라는 간편한 매커니즘을 사용하는 잘 정의된 인터페이스를 통해 다른 서비스와 통신합니다
마이크로 서비스는 비즈니스 기능을 중심으로 구축되며, 각 서비스는 단일 목적으로 한정되어 있습니다. 다양한 프레임워크 또는 프로그래밍 언어를 사용하여 마이크로 서비스를 작성하고 이를 독립적으로 단일 서비스는 또는 서비스 그룹으로 배포할 수 있습니다

-코드형 인프라
버전관리 및 지속적 통합과 같은 코드와 소프트웨어 개발 기술을 사용하여 인프라를 프로비저닝하고 관리하는 방식입니다
클라우드의 API 중심 모델을 사용하면 개발자와 시스템 관리자가 수동으로 리소스를 설정 및 구성할 필요없이 프로그래밍 방식으로 대규모로 인프라와 상호작용할 수 있습니다. 따라서 엔지니어는 코드 기반 도구를 사용하여 인프라와 인터페이스하고, 애플리케이션 코드를 다루는 방법과 유사한 방식으로 인플라를 다룰 수 있습니다. 인프라가 코드를 통해 정의되므로, 인프라와 서버를 표준화된 패턴을 사용하여 배포하고 최신패치와 버전으로 업데이트 하거나, 반복 가능한 방식으로 복제할 수 있습니다.

        1)구성관리
         개발자와 시스템 관리자는 코드를 사용하여 운영체제를 자동화하고 구성, 운영 작업등을 호스팅합니다. 코드를 사용함으로써 구성 변경을 반복하고 표준화 할 수 있습니다.이에 따라 개발자와 시스템관리자가 운영체제, 시스템 어플리케이션 또는 서버 소프트웨어를 수동으로 구성할 필요가 없어집니다

        2)코드형 정책
         인프라와 인프라 구성이 클라우드로 체계화된 조직은 규정 준수를 규모에 따라 동적으로 모니터링하고 적용할 수 있습니다. 따라서 코드를 통해 설명된 인프라는 자동화된 방식으로 추적, 검증 및 재구성할 수 있습니다. 이는 조직이 손쉽게 리소스 변경을 관리하고 보안 조치가 분산 방식으로 적절하게 적용될 수 있게 해줍니다.


-모니터링 및 로깅
조직은 지표와 로그를 모니터링하여 애플리케이션 및 인프라 성능이 제품의 최종사용자 경험에 어떤 영향을 미치는지 확인합니다. 조직은 애플리케이션과 인프라에서 생성되는 데이터 및 로그를 캡쳐하고 분류한 다음 이를 분석함으로써, 변경 또는 업데이트가 사용자에게 어떤 영향을 주는지 이해하고, 문제의 근본 원인 또는 예상치 못한 변경에 때한 통찰력을 확보합니다. 서비스는 연중무휴 24시간 사용할 수 있어야 하고 애플리케이션 및 인프라 업데이트 빈도가 증가함에 따라 적극적인 모니터링이 점점 더 중요해지고 있습니다. 이러한 데이터에 대한 실시간 분석을 수행하거나 알림을 생성하는 것도 조직이 좀 더 능동적으로 서비스를 모니터링하는 데 도움이 됩니다

-커뮤니케이션 및 협업
조직에서 커뮤니케이션과 협업이 증가하는 것도 데브옵스의 주요 문화적 측면 중 하나입니다. 데브옵스 도구 및 소프트웨어 제공 프로세스를 자동화를 사용하면 개발 및 운영의 워크플로와 책임을 물리적으로 합침으로써 협업이 이루어집니다. 해당 팀에서는 이 위에 채팅 애플리케이션, 문제 또는 프로젝트 추적 시스템, wiki를 사용하여 커뮤니케이션을 지원하고 정보를 공유하는 강력한 문화적 표준을 확립합니다.
이를 통해 개발자와 운영 그리고 마케팅이나 영업과 같은 다른 팀간에도 커뮤니케이션이 활발해지면서 조직의 모든 부분에서 목표와 프로젝트에 좀 더 가깝게 다가갈 수 있습니다


개발자로써의 앞으로 준비해야 할 일
-다양한 프로그래밍 알아야 함
-마이크로 서비스(API) 알아두기
-지속적 전달 툴(젠킨스) 알아두기

제닉스 아레나 PC방 헤드셋과 키보드와 마우스

Posted by HULIA(휴리아)
2018. 3. 15. 01:09 뒷이야기들/하드웨어제품_팁_사용후기

요즘 뜨는 제닉스 아레나 PC방에서


헤드셋

앱코 HS600 DESTROY 헤드셋

2만원초반이며 내구성 괜찮음



키보드

-제닉스 STORMX 키보드



마우스

-Titan 마우스

브라우저 동시 커넥션 갯수

Posted by HULIA(휴리아)
2018. 3. 1. 20:53 뒷이야기들/스터디히스토리강의

https://stackoverflow.com/questions/985431/max-parallel-http-connections-in-a-browser


Chrome34/32    6 10

IE9     6 35

IE10      8 17

IE11        13 17

Firefox27/26     6 17

Safari7.0.1     6 17

Android4      6 17

ChromeMobile18      6 16

IE Mobile9     6 60

The first value is ConnectionsPerHostname and the second value is MaxConnections.

프론트엔드 개발자가 되고 싶지 않았던 프론트엔드 개발자의 이직기

Posted by HULIA(휴리아)
2018. 2. 22. 00:50 뒷이야기들/취업이직준비채용공고

https://milooy.wordpress.com/2018/02/07/moving-job/


1. 온라인 서비스로 먹고 사는 곳인가?

2. 사업의 확장성은 어떻게 되는가?

3. 내 업무의 범위는 어떤가?



면접 준비에 도움이 ‘정말로’ 되었던 링크

면접문제은행

@Jbee님의 개발자 기술면접 준비 자료 repo: https://github.com/JaeYeopHan/Interview_Question_for_Beginner

프론트엔드 면접 문제 은행: https://github.com/h5bp/Front-end-Developer-Interview-Questions/tree/master/Translations/Korean

프론트엔드 체크리스트: https://github.com/kesuskim/Front-End-Checklist

자바스크립트 인터뷰 가이드(진짜 좋음): https://medium.com/dev-bits/a-perfect-guide-for-cracking-a-javascript-interview-a-developers-perspective-23a5c0fa4d0d

자바스크립트

window: https://developer.mozilla.org/en-US/docs/Web/API/Window

Scope: http://hochulshin.com/everything-about-javascript-scope/

this: http://webframeworks.kr/tutorials/translate/explanation-of-this-in-javascript-1/

객체 생성: http://wit.nts-corp.com/2014/03/05/1042

First citizen object: https://bestalign.github.io/2015/10/18/first-class-object/

실행 컨텍스트: https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/this