본문 바로가기

잡학다식

(39)
우리 아이, 소프트웨어 교육 왜 해야 하는가? 4차 산업 혁명, 말은 많이 들어 보았지만 도대체 무엇을 말하는 것일까?간략히 말하면 인공 지능, 사물 인터넷, 빅데이터 등 첨단 정보 통신 기술이 사회 다양한 영역에 녹아들어가 융합을 하는 과정에서 혁신적인 변화가 일어나는 것을 말한다. 혁명이라는 단어는 웬만한 변화로 잘 쓰지 않는 단어인 만큼 4차 산업 혁명은 요즘 세상이 엄청난 변화를 하고 있다는 것을 보여준다. 이러한 변화는 환경과 기술의 변화만을 뜻하는 것은 아니다. 환경과 기술의 변화로 그 속에 살아가는 사람들의 변화도 필수적이다. 세상을 살아가는데 인간이 가져야 할 자세가 바뀌게 되는 것이다. 직접적으로 이야기하자면 세상이 필요로 하는 인재상이 바뀐 것이다. 과거의 인류가 발전해 온 진화를 살펴본다면 이러한 인간의 변화도 진화의 일부분이 아..
[IT 첫걸음] JAVA8편 람다(lambda) ​ 1. 람다 표현식(lambda)은 나중에 한번 이상 실행할 수 있도록 전달할 수 있는 코드 블록이다. - 과거에 자바는 어딘가에 코드 블록을 전달하는 일이 쉽지 않았다.(즉, 단순히 코드 블록을 전달할 수 없음.) 자바는 객체지향 언어기 때문에, 원하는 코드가 있는 메서드를 포함하는 클래스의 객체를 생성해야했음. 2. 람다 표현식 문법 - (파라미터, 화살표->,표현식) * 예 : (String first, String second) -> Integer.compare(first.length(), second.length()) * 자바는 타입 결합이 강한 언어기 때문에 타입도 지정해야함. - 표현식 하나로 표현할 수 없는 계산은 중괄호{}를 사용하고 명시적 return문 사용. *예 : (String ..
[IT 책갈피] Spring Framework 3.x -> 4.x Web Application migration Spring Framwork 3.x에서 4.x로 웹어플리케이션 갈아타기 Spring Framework 3.x 기반으로 개발된 웹어플리케이션에서 Servlet 3.0, Spring Framework 4.x 버전으로 갈아타는 법을 함께 해보자. [JAVA8과 만나고 싶다면 피할 수 없는 작업이다. JAVA8은 Spring Framework 4.x에서만 지원되고 있다.] 1. 메이븐 형식의 프로젝트, pom.xml파일에 서블렛 버전 설정하기 2. web.xml파일에 version 업데이트 및 xsd 파일 수정. 3. pom.xml에 Spring Framework의 라이브러리(jar)를 4.x로 설정한다. 4. 스프링 Context설정 파일의 스키마 로케이션 정보 업데이트(spring-servlet.xml 파일..
[IT 첫걸음] 보기 좋은 코드가 고치기도 쉽다. 구성이 잘 짜인 책을 만나면 왠지 모르게 기분이 좋고 한 장 한 장 넘기는 것이 수월하다. 반대로 문장 구조가 엉망인 글을 만나면 몇 번을 다시 봐야 하고 그 후에도 찜찜함이 남는다. 코딩도 마찬가지다. 이 책에서는 구성이 잘 짜인 코딩이 '눈을 편하게' 한다고 표현하고 있다. [편한 소스 코드 작성에 세 가지 원리] *코드를 읽는 사람이 이미 친숙한, 일관성 있는 레이아웃을 사용하라.*비슷한 코드는 서로 비슷해 보이게 만들어라.*서로 연관된 코드는 하나의 블록으로 묶어라. [여러 블록에 담긴 코드가 모두 비슷한 일을 수행하면, 실루엣이 동일해 보이게 만들어라.] 우리는 많은 '추측'들과 함께 살아가고 있다. 길을 지나가다 작고 동그란 원반 모양의 은색척을 본다면 발걸음을 멈출 것이다. 우리는 머릿속으로..
[IT첫걸음] 코딩 작명 비법 "이름으로 소통하기!!" 변수, 함수, 클래스등의 이름을 결정할 때 정보를 담아 보자!변수, 함수, 클래스의 이름이 곳 다른 사람과의 소통이기 때문이다. 1. 아무 생각없이 손에 익은 이름을 타이핑 하기 전에 더 명확하게 의미를 전달 할 수 있는 단어가 없는지 생각해 보자. send => route, announce, deliver...find => search, recover...start=> launch, create ...make -> create, set up, add, new.. 센스 넘치고 은유적인 단어는 시나 편지에 쓰고 프로그램에 쓸 이름은 명확, 간결, 담백하게 쓰자!! 2. 흔해 빠진 고민 없는 이름 피하기 temp, ret 등과 같은 이름으로 변수 혹은 함수의 목적을 자신만 알게 쓰지..
[책책책]The Nature of Software Development을 읽고... ​ The Nature of Software Development 오래전에 보았던 책이나 영화를 다시 찾아 볼때면 익숙함과 새로움이 공존하는 것을 느낄 수 있다. 그시절 내가 느꼈던 감정들을 되집어 볼 수도 있고 그때 미처 보지 못했던 부분을 발견하기도 한다. 이것은 과거의 내가 책이나 영화에 집중을 하지 않았기 때문이 아니다. 내가 시간이 지나면서 변한 만큼 과거에 느끼는 것과 현재에 느끼는 것이 서로 차이가 나는 것이다. 시간의 흐름과 함께 우리는 경험이라는 것을 쌓아 왔다. 아마 시간이 지나감에 경험을 잃어 가는 사람은 없을 것이다. 지우고 싶은 경험이 있을지 몰라도 경험을 지우며 시간을 보내는 것은 특별한 경우가 아니면 불가능하기 때문이다. 이렇게 쌓인 경험에 의해 우리는 세상을 바라보는 관점이 ..
[클라우드] 클라우드 서비스에 Iaas. Paas, Saas라 불리우는 자들은 도대체 누구인가? 하룻밤이 무섭게 새로운 용어와 기술들이 태어나는 IT분야에 클라우드로 글을 시작 하게 된 이유는 클라우드 서비스가 많은 IT기술을 내포하고 있기 때문이다. 클라우드 서비스는 엄청난 속도로 발전하고 있는 IT분야인 만큼 새로운 기술에 대한 흡수력도 상당하다. 결국 클라우드 서비스를 알아가다 보면 많은 IT기술들을 만날 수 있을 거라는 기대감과 설레임에 클라우드를 주제로 선정해 보았다. 클라우드의 큰의미에 대해서는 별도로 설명하지 않겠다. (클라우드라는 말을 처음 듣는 사람은 잠시 구글에 가서 검색을 하고 오길 바란다. 생각보다 오래전부터 만들어진 자료를 통해서 정의를 보게 될 것이다.) 우리가 일반적으로 듣는 클라우드 서비스는 같은 이름을 가지고 있지만 여러가지 얼굴을 가지고 있다. 클라우드 설명에 앞서 ..