새 문서 목록
기술노트
(최신 | 오래됨) (다음 50개 | 이전 50개) (20 | 50 | 100 | 250 | 500) 보기
- 2025년 2월 5일 (수) 16:21 6 빅데이터 자격증 ADsP 내용 (출처 데이터듀 데이터분석준전문가)/6 2 OLTP vs OLAP (역사 | 편집) [1,746 바이트] Admin (토론 | 기여) (새 문서: OLTP (On-Line Transaction Processing) : 서비스나 시스템에 연결되어 있는 데이터 베이스에 데이터를 저장하거나 변경/삭제 하는등의 행위를 의미함. 예를 들어 게시글 작성 같은 행위에 의해서 데이터가 처리되는 것 그러다 보니 특징이 있는데, 데이터 갱신을 위한 요청 처리 중심 데이터 갱신은 즉시, 순식간에 응답도 수 초 이내 데이터 범위 현재 데이터 위주로 약간의 과...)
- 2025년 2월 5일 (수) 16:21 6 빅데이터 자격증 ADsP 내용 (출처 데이터듀 데이터분석준전문가)/6 1 데이터와 정보 (역사 | 편집) [1,715 바이트] Admin (토론 | 기여) (새 문서: 데이터란? 데이터로 말해라! <\- 이런 표현이 있듯이 사실 또는 정량적으로 나타는 수치 정량적 vs 정성적 <\- 문자화도 가능 숫자로 나타날 수 있는 것 = 정량적 - 정형 통계 , 객관적 내용 정성적 = 표현, 기대효과, 문자로 표시 - 비정형 주관적인 내용일 가능성 DIKW피라미드 Data - 데이터 자체, 객관적 사실 정도 수출량 Information - 데이터가 포함하고 있는 의미 수...)
- 2025년 2월 5일 (수) 16:21 5 플랫폼! 기차 기다리는 곳이 플랫폼/5 5 마이크로 서비스/5 5 2 도커에 필요한 사이트 및 명령어 모음 (역사 | 편집) [2,947 바이트] Admin (토론 | 기여) (새 문서: 도커를 이용하기 위한 사이트 https://hub.docker.com/ : 도커 만들어진 이미지 검색 및 다운로드 Official Image : 안전한 이미지 리눅스 상에서 도커 설치 apt install docker.io -y 리눅스 상에서 도커 시작 service docker start 도커 이미지 검색 docker search tomcat 도커 가져오기 (pulling) docker pull consol/tomcat-7.0 도커 검사하기 docker inspect consol/tomcat-7.0 도커 리스트 확인 docker images 도커...)
- 2025년 2월 5일 (수) 16:21 5 플랫폼! 기차 기다리는 곳이 플랫폼/5 5 마이크로 서비스/5 5 1 Why 도커인가 (역사 | 편집) [2,600 바이트] Admin (토론 | 기여) (새 문서: 도커와 관련하여, 기존의 모노리식 방식에서는 하나의 시스템 내에 모든 기능을 통합하여 개발하는 접근 방식이 일반적이었습니다. 이 방식의 주요 문제점으로는, 한 번의 수정이 전체 시스템의 재배포를 필요로 하며, 이는 프로그램의 크기가 커질수록 빌드 시간의 증가와 프로그램 내 버그 발생 빈도의 상승을 초래합니다. 또한, 인스턴스를 확장할 때 필요하지...)
- 2025년 2월 5일 (수) 16:21 5 플랫폼! 기차 기다리는 곳이 플랫폼/5 2 서버 기반 컴퓨팅 상식적으로 말하면/5 3 SaaS vs PaaS vs IaaS (역사 | 편집) [4,514 바이트] Admin (토론 | 기여) (새 문서: SaaS는 Software as a Service이다. 기존 방식으로 보면 소프트웨어는 구매를 해서 설치하고 사용을 했다. 장점과 단점이 존재할 수 있다. 일시에 구매를 해야 한다는 점이 그리고 사용하지 않을 수도 있다는 점등에서 진입 장벽이 높았을 수도 있다. SaaS는 소프트웨어를 서비스방식으로 제공한다는 취지이다. 과거 마이크로 소프트 워드 제품을 구매해서 사용해야 했다면...)
- 2025년 2월 5일 (수) 16:21 5 플랫폼! 기차 기다리는 곳이 플랫폼/5 2 서버 기반 컴퓨팅 상식적으로 말하면/5 서버리스 아키텍쳐 서버가 없다 (역사 | 편집) [2,496 바이트] Admin (토론 | 기여) (새 문서: 이제는 심지어 가상화를 뛰어 넘어 서버가 없다. 서버가 없다는 것이 쉽게 이해되지 않는다. 실제로 없는 것은 아니다. 다만 사용자 관점에서는 이제 더이상 신경을 쓸 서버가 없다는 의미에 가깝다. 신경을 쓴다는 의미는 관리 대상에서 생각하지 않아도 된다는 의미이다. 이미 클라우드라는 서비스를 통해서 하드웨어적인 서버는 생각하지 않아도 된다. 그냥 서비...)
- 2025년 2월 5일 (수) 16:21 5 플랫폼! 기차 기다리는 곳이 플랫폼/5 1 Why 클라우드, 클라우드인 이유, 제공되는 기능들/5 1 6 GCP - Google Cloud Platfrom (구글 클라우드 플랫폼 인 액션 중에서 발췌 정리) (역사 | 편집) [15,716 바이트] Admin (토론 | 기여) (새 문서: 아래는 GCP 자격증 준비하면서 정리해본 Summary입니다. 이거으로 충분한 설명은 안되니 공부하시다가 참고하시면 좋겠습니다. What is cloud computing ? 1\. On-demand self-service : No human intervention needed to get resources 2\. Broad network access : Access from anywhere 3\. Resource pooling : Provider shares resources to customers 4\. Rapid elaticity : Get More resources quickly as needed 5\. Meausred service : Pay only for what you c...)
- 2025년 2월 5일 (수) 16:21 5 플랫폼! 기차 기다리는 곳이 플랫폼/5 1 Why 클라우드, 클라우드인 이유, 제공되는 기능들/5 1 5 클라우드 컴퓨팅의 활용 사례 (역사 | 편집) [6,806 바이트] Admin (토론 | 기여) (새 문서: 클라우드 컴퓨팅을 이용할 수 있는 분야는 전분야라고도 할 수 있다. B2C, 엔터프라이즈 분야, 공공분야, 신사업, IoT 서비스 가능도 가능하다. 물론 기업의 기존 시스템들도 클라우드 환경에서 서비스할 수 있다. 대표적으로 어떤 기능들을 통해서 효과를 낼 수 있는 생각해보면 CDN이 이용이 가능하다. CDN은 Content Delivery Network이다. 대용량 파일이나 이미지 파일들을...)
- 2025년 2월 5일 (수) 16:21 5 플랫폼! 기차 기다리는 곳이 플랫폼/5 1 Why 클라우드, 클라우드인 이유, 제공되는 기능들/5 1 4 아마존 클라우드의 데이터베이스 서비스 (역사 | 편집) [2,531 바이트] Admin (토론 | 기여) (새 문서: DB도 아마존 같은 경우 DB를 품고 있다. RDS라는 이름으로 기존 관계형데이터 베이스들을 품고(?) 서비스형태로 서비스를 하고 있다. 품고 한다는 의미는 RDS 서비스를 선택할 경우 구지 DB를 설치 하지 않아도 된다. 인스턴스와 같이 그냥 생성하고 사용하면 된다. MySQL이나 Oracle DB를 설치 하지 않아도 된다. 크게 몇가지 DB 형태가 있는데, RDS, 그리고 DynamoDB, ElasticCache, Red...)
- 2025년 2월 5일 (수) 16:21 5 플랫폼! 기차 기다리는 곳이 플랫폼/5 1 Why 클라우드, 클라우드인 이유, 제공되는 기능들/5 1 3 결함허용 컴퓨팅의 완성은 클라우드 컴퓨팅에서 (역사 | 편집) [2,479 바이트] Admin (토론 | 기여) (새 문서: 진정한 결함허용 컴퓨팅은 최근 들어 완성에 이르렀다고 볼 수 있다. 최근이라는 단어가 기준이 다 다르겠지만, 최근이라는 단어을 쓴 이유는 과거에 결함허용 컴퓨팅이라는 단어가 나올 당시는 이중화 차원이였을 것으로 보인다. 서버를 2대 정도 두고 한대의 서버가 다운되도 나머지 한대가 커버 하는 수준 그래서 결함이 발생되어도 서비스 영속성을 보장한다....)
- 2025년 2월 5일 (수) 16:21 5 플랫폼! 기차 기다리는 곳이 플랫폼/5 1 Why 클라우드, 클라우드인 이유, 제공되는 기능들/5 1 2 클라우드 실현 기술, 가상화 (역사 | 편집) [2,422 바이트] Admin (토론 | 기여) (새 문서: 클라우드 컴퓨팅이 가능한 기술적인 근거는 가상화이다. 여기서의 가상화는 우리가 일상적으로 말하는 가상과는 약간 거리가 있다. 가상이라고 하면 없는 것을 있는 것처럼 보이는 정도 아닐까 가상현실, 현실에 없는 것을 보여주는 것일터이다. 클라우드 컴퓨팅의 가상화가 가지는 의미는 이런 개념이다. 두대의 물리적인 컴퓨터를 한대의 컴퓨터처럼 보이게 하는...)
- 2025년 2월 5일 (수) 16:21 5 플랫폼! 기차 기다리는 곳이 플랫폼/5 1 Why 클라우드, 클라우드인 이유, 제공되는 기능들/5 1 1 클라우드 컴퓨팅이란, 그리고 장점은 (역사 | 편집) [6,181 바이트] Admin (토론 | 기여) (새 문서: 클라우드 컴퓨팅은 클라우드라는 말은 구름이라는 뜻에서 나왔다. 어딘가 존재하는 컴퓨터들이다. 어딘가는 존재한다. 하지만 구지 우리가 알아야 하는 것은 아닌 개념이다. 물리적으로 어떻게 구성되어 있는지 몰라도 된다. 모른다는 것은 큰 리스크이기도 하지만, 편리함을 주는 부분도 있다. 과거 서버 하나를 구입해서 운영을 하는 것까지는 큰 비용과 시간이...)
- 2025년 2월 5일 (수) 16:21 5 플랫폼! 기차 기다리는 곳이 플랫폼/5 6 인공지능 vs 머신러닝 (역사 | 편집) [3,461 바이트] Admin (토론 | 기여) (새 문서: 인공지능은 대세다. 그런데 과연 인공지능은 현 시대의 작품일까? 1956년도에 다트머스 컨퍼런스에서 인공지능에 대해서 정의가 이뤄졌다. 신경망 이론 이라는 단어도 그때 등장을 했다. 왜 신경망 이론일까? 인공지능의 출발은 어쩌면 사람의 두뇌에서 시작했던거 같다. 사람의 두뇌에 보면 뉴런이란게 있으니 그 두뇌를 흉내내보려는 시작이다. 인간은 학습을 하고...)
- 2025년 2월 5일 (수) 16:21 5 플랫폼! 기차 기다리는 곳이 플랫폼/5 5 마이크로 서비스 (역사 | 편집) [3,495 바이트] Admin (토론 | 기여) (새 문서: 왜 마이크로서비스인가? 마이크로서비스가 무엇이고, 왜 등장했나? 마이크로서비스 하면 넷플릭스가 대표적이고 유명하다. 왜 넷플릭스는 마이크로서비스를 도입했고, 마이크로서비스는 무엇인가? 몇 가지로 재해석해보면 대표적인 이유는 안정성이다. 시스템이 대규모가 되면서 전체 시스템 장애 같은 대규모 장애가 몇번 나면서 이를 어떻게 하면 견고하게...)
- 2025년 2월 5일 (수) 16:21 5 플랫폼! 기차 기다리는 곳이 플랫폼/5 4 병렬처리 컴퓨팅 vs 분산처리 컴퓨팅 (역사 | 편집) [2,066 바이트] Admin (토론 | 기여) (새 문서: 병렬처리 컴퓨팅 병렬처리라는 의미는 원래 CPU는 한 순간의 하나의 일 밖에 못한다. 마치 컴퓨터에서 수많은 프로그램이 동시에 되는 거 같고, 워드를 치면서 영화도 잘 나오고, 심지어 한쪽에서 게임도 할 수 있지만, 이 모든 것이 한순간에는 하나의 일만한다. 물론 얼마 전부터 나온 멀티 코어는 얘기가 조금 다르다. 실제로 몇 가지를 동시에 할 수 있다. 이때 몇...)
- 2025년 2월 5일 (수) 16:21 5 플랫폼! 기차 기다리는 곳이 플랫폼/5 2 서버 기반 컴퓨팅 상식적으로 말하면 (역사 | 편집) [2,331 바이트] Admin (토론 | 기여) (새 문서: 서버 기반의 컴퓨터 구조라는 것은 기본적인 서버-클라이언트 구도에서 서버에 비중이 높은 구조이다. 비중이 높다는 것은 대부분의 로직이 서버에서 수행이 되고, 클라이언트는 결과값 위주로 받는 것이다. 반대로 클라이언트가 대부분의 기능을 하고, 서버는 가볍게 수행될 수도 있다. 서버 기반이 되는 것은 클라이언트를 가볍게 하고, 어디서나 할 수 있게 하기...)
- 2025년 2월 5일 (수) 16:21 5 플랫폼! 기차 기다리는 곳이 플랫폼/5 1 Why 클라우드, 클라우드인 이유, 제공되는 기능들 (역사 | 편집) [8,784 바이트] Admin (토론 | 기여) (새 문서: 예를 들면 명절에 철도 예매 서비스, 연말 정산 서비스 등 몇몇개 서비스는 플랙서블한 컴퓨팅 자원이 필요한 것들이다. 현재 어떤 서버 구조로 서비스 하고 있는지 보안사항이여서 알 수는 없겠지만, 매우 적합 할 것으로 보인다. 때로는 게임업체에서도 우리나라 게임이라면 시간대별 게임서버 댓수를 달리 함으로써 효율적인 서버 관리를 할 수도 있다. 아무래도...)
- 2025년 2월 5일 (수) 16:21 4 소프트웨어 개발을 한다는 것은 무엇일까/4 5 DevOps는 시너지이다/4 5 3 ITIL은 IT운영의 베스트 사례 모음 (역사 | 편집) [3,154 바이트] Admin (토론 | 기여) (새 문서: ITIL은 IT 운영에 대한 베스트 사례 모음이다. IT를 운영을 할 때보면 구축할 때보다 더욱 체계를 잡기가 어렵다. 구축할 때는 보통 기획을 하고, 설계를 하고, 설계된 대로 구현을 하고 테스트를 한다. 이것이 곧 프로세스이자. 방법론이자. 실제 하는 일이 된다. 쉽게 말해 목표가 명확하다는 뜻이다. 그런데, 운영을 하라고 하면 목표라는 것을 잡기가 어렵다. 그렇다...)
- 2025년 2월 5일 (수) 16:21 4 소프트웨어 개발을 한다는 것은 무엇일까/4 5 DevOps는 시너지이다/4 5 2 운영 수준 정의 - SLA (역사 | 편집) [4,299 바이트] Admin (토론 | 기여) (새 문서: 서비스 레벨 동의라고 해석되어지는데, 이는 IT 계약 할 때 운영을 맡게 되는 경우 그 시스템이 어느 정도 영속성을 가지고, 장애는 어느 정도까지 허용된다라고 하는 운영의 수준에 대한 부분의 협의 내용이다. 여기에는 서비스가 잘되면 어떤 보상을 주고, 서비스가 특정 시간 이상 안될 수에는 벌금을 물겠다는 내용이 포함된다. 수행 업체는 그 책임을 어느정도를...)
- 2025년 2월 5일 (수) 16:21 4 소프트웨어 개발을 한다는 것은 무엇일까/4 5 DevOps는 시너지이다/4 5 1 CI, CI하는데, CI가 뭐지요 (역사 | 편집) [1,982 바이트] Admin (토론 | 기여) (새 문서: CI는 Contious Integration으로 지속적인 통합 정도로 해석할 수 있다. 달리는 기차의 바퀴를 갈아끼는 일일 수 있다. 현재 운영 중인 시스템에 기능을 더하거나 기존 문제점을 수정해 나간다. 전면적인 교체라기보다는 부분적인 유지보수를 하면서 더해지는 일이다. 구축은 한다는 표현으로 SI를 많이 사용하는 SI는 시스템 Integration이고, CI는 운영을 하면서 기능이라든가...)
- 2025년 2월 5일 (수) 16:21 4 소프트웨어 개발을 한다는 것은 무엇일까/4 4 형상관리는 소스 관리/4 4 4 소프트웨어 테스트 위상이 높아진 까닭은 (역사 | 편집) [3,964 바이트] Admin (토론 | 기여) (새 문서: 소프트웨어를 테스트하는 방법은 여러가지가 있을 수 있다. 기능를 하는 단위 테스트, 여러가지 조합해보는 통합 테스트, 성능 테스트, 보안 사항에 위배가 없는지 해킹 우려가 없는지도 테스트이다. 기본적인 기능에 문제가 없는 단위별 테스트가 단위테스트이다. 개발자가 기본적으로 자기만 개발한 프로그램에 대한 테스트를 해야 한다. 그래서 유닛테스트라고...)
- 2025년 2월 5일 (수) 16:20 4 소프트웨어 개발을 한다는 것은 무엇일까/4 4 형상관리는 소스 관리/4 4 3 페어 프로그래밍은 어메리칸 스타일 (역사 | 편집) [3,011 바이트] Admin (토론 | 기여) (새 문서: 우리말로는 어색하지만, 짝 프로그램이라고 한다. 둘이서 같이 개발을 하는 것이다. 둘 중 한사람이 코드를 잡고, 한 사람은 옆에서 같이 코드를 보면서 개발을 한다. 형식이 있다기 보다는 두사람이 한다는 자체이다. 그럼 왜 두사람이 개발을 하는가? 한사람씩 나눠서 개발을 하면 더 생산성이 높을거 같은데 말이다. 일단 페어 프로그래밍은 생산성을 위한 것은...)
- 2025년 2월 5일 (수) 16:20 4 소프트웨어 개발을 한다는 것은 무엇일까/4 4 형상관리는 소스 관리/4 4 2 리팩토링 is 리모델링 (역사 | 편집) [3,569 바이트] Admin (토론 | 기여) (새 문서: 리팩토링은 다시 구조화 하는 것이다. 건물로 비유하면 리모델링 정도라고 보면 될거 같다. 보통 개발자들은 남들이 짜놓은 코드를 보면 코드가 엉망이라고 다시 짜야 한다고 한다. 대개는 다시 처음부터 짜고 그 복잡한 기능들을 구현하다보면 다시 스파게티 코드가 된다. (스파게티 코드라는 말을 쓴다. 엉망진창이라는 뜻이다.) 그러면 다른 누군가는 말을 한다....)
- 2025년 2월 5일 (수) 16:20 4 소프트웨어 개발을 한다는 것은 무엇일까/4 4 형상관리는 소스 관리/4 4 1 소프트웨어 유지보수도 중요하다 (역사 | 편집) [4,198 바이트] Admin (토론 | 기여) (새 문서: 유지보수라는 것은 구축된 시스템을 운영 및 관리해주는 것이다. 사실 이미 구축된 시스템이라면 많은 일손이 안들수도 있다. 잘 돌아가기만 하면 될 것이다. 물론 B2C 서비스의 경우 상황은 다를 수 있다. 앞서 얘기한 것도 있지만, 린 개발방법론이라든가 DevOps를 한다면 유지보수라는 측면보다는 지속 개발이라는 것이 맞을 것이다. 계속된 요구가 있고, 개선 사항...)
- 2025년 2월 5일 (수) 16:20 4 소프트웨어 개발을 한다는 것은 무엇일까/4 3 개발 방법론의 진화, 요구공학이란/4 3 3 애자일 흉내내기 (역사 | 편집) [2,803 바이트] Admin (토론 | 기여) (새 문서: 애자일은 쉽게 말하면 민첩한 개발이다. 스크럼을 한다. 스크럼은 간단한 회의를 말한다. 사실 개발 방법론 중에는 지나치게 그 방법론이 뭐냐를 의식하는 경우가 많다. 굉장히 자연스럽게 생겨난 형태인데, 우리는 그 겉모습을 따라하기 바쁘다. 간단하게 하라고 하니 간단하게 하고, 서서 하라고 하니 회의를 서서한다. 그 근본 취지를 좀더 생각해볼필요가 있는...)
- 2025년 2월 5일 (수) 16:20 4 소프트웨어 개발을 한다는 것은 무엇일까/4 3 개발 방법론의 진화, 요구공학이란/4 3 2 애자일 방법론, 방법론 테일러링 (역사 | 편집) [4,135 바이트] Admin (토론 | 기여) (새 문서: 애자일 방법론도 어쩌면 개발방법론에 집중하기 보다는 개발에 집중하다 보니 나오게 된 방법론의 혁식적인 변화일 것이다. 애자일이라는 것은 민첩함 정도, 그렇다고 애자일 방법론을 민첩하게 개발하는 것 정도로 생각하고 해석하기에는 애자일이 가지는 의미는 매우 넓다. 대부분의 방법론은 제조에서 나온 것으로 보인다. 물론 PMP와 같은 프로젝트 관리 자격...)
- 2025년 2월 5일 (수) 16:20 4 소프트웨어 개발을 한다는 것은 무엇일까/4 3 개발 방법론의 진화, 요구공학이란/4 3 1 CBD방법론의 컴포넌트란 (역사 | 편집) [2,907 바이트] Admin (토론 | 기여) (새 문서: Component Based Development 방법론이다. 개발 방법론은 여러가지가 있다. 컴포넌트 기반으로 개발을 한다는 것이다. 컴포넌트는 무엇일까? 프로그램의 기본 단위는 함수라고 할 수 있다. 함수도 어떤 기능을 한다. 모듈이 있다. 모듈도 기능을 하는 것인데, 함수들의 집합이다. 함수들이 어떤 순서로 동작이 되면서 기능을 하는 것이다. 모듈은 꽤 큰 기능을 표현할 때 사용...)
- 2025년 2월 5일 (수) 16:20 4 소프트웨어 개발을 한다는 것은 무엇일까/4 2 프로젝트 관리에는 답이 없다/4 2 2 정보시스템 감리의 실제적인 업무 내용 (역사 | 편집) [4,210 바이트] Admin (토론 | 기여) (새 문서: 정보시스템에 있어서 감리 영역은 시스템이 잘 구축되어 있는지 점검하는 것이다. 그 기준은 설계 문서가 될 것이다. 설계 대로 구축이 되어 있는지 측면이 구현이 잘되었다고 할 수 있다. 설계도 확인을 해야 한다. 요구사항 대비 요구사항이 반영이 잘되었는지를 봐야 한다. 요구사항이 설계에 반영이 되고, 실제 구현이 잘되었는지까지 봐야 한다. 그리고 구현체...)
- 2025년 2월 5일 (수) 16:20 4 소프트웨어 개발을 한다는 것은 무엇일까/4 2 프로젝트 관리에는 답이 없다/4 2 1 분리 발주 분할 발주 차이가 (역사 | 편집) [4,044 바이트] Admin (토론 | 기여) (새 문서: 분리 분할 발주는 프로젝트는 원청, 시행코자 하는 회사는 분리와 분할 발주의 차이는 두가지 모두 '을' 또는 '병정' 입장을 좀더 생각하는 것이 소프트웨어 업계는 오랜동안 병정 놀이를 해왔다. 지금도 그러고 있다. 분리 발주는 소프트웨어 분리를 발주는 하는 것이다. 하드웨어 납품업체, 또는 솔루션 납품업체가 원청에 독자적으로 납품을 하는 것이다. 이를 전...)
- 2025년 2월 5일 (수) 16:20 4 소프트웨어 개발을 한다는 것은 무엇일까/4 1 건축물의 구조 설계 같은 시스템 아키텍쳐/4 1 2 소프트웨어 아키텍쳐는 정답이 없다 (역사 | 편집) [2,802 바이트] Admin (토론 | 기여) (새 문서: 아키텍쳐는 건물로 치면 구조물을 어떤식으로 만들 것인가 이다. 디자인은 건물의 외관이 어떤 외곽을 가지며 어떤식의 색깔과 분위기를 연출할지라면 소프트웨어에서도 비슷하다. 사용자가 접하고 있는 부분의 느낌이나 선, 색들을 정하고 꾸미는 것이다. 아키텍쳐는 순수한 그림 안에 어떤식으로 구조화 할지에 대한 부분이다. 건물 구조를 단순하게 사각형으로...)
- 2025년 2월 5일 (수) 16:20 4 소프트웨어 개발을 한다는 것은 무엇일까/4 1 건축물의 구조 설계 같은 시스템 아키텍쳐/4 1 1 소프트웨어 설계 vs 건축물 설계 (역사 | 편집) [3,487 바이트] Admin (토론 | 기여) (새 문서: 설계라는 것은 그림을 그리는 것이다. 건축물로 치면 설계도를 그리는 것이다. 설계도는 건축물을 만들기 위한 모든 것이 담겨져 있다. 그림으로 표시도 되어 있고, 수치로도 표시가 되어 있다. 어떤 건축물을 만들지를 알 수가 있다. 건축물에도 조망도가 있고, 상세하게 층마다 어떻게 지어질지가 나타나있는 세부 설계도가 있다. 건물을 보면 우리는 계단을 올라...)
- 2025년 2월 5일 (수) 16:20 4 소프트웨어 개발을 한다는 것은 무엇일까/4 6 소프트웨어 테스트 방법론 (역사 | 편집) [1,423 바이트] Admin (토론 | 기여) (새 문서: 테스트 화이트 박스 테스트 vs 블랙 박스 테스트 화이트 박스 테스트는 소스를 보고 review하거나 code inspection 같은 툴로 소스 검증을 하는 방법입니다. 블랙박스 테스트는 기능에 관련된 테스트이구요. 자세히는 아래와 같습니다. 단위테스트 unit test 통합테스트 시나리오 기반 테스트 회귀테스트 반복 테스트 연동테스트 타 모듈과 연동되는 시나리오 기반 성...)
- 2025년 2월 5일 (수) 16:20 4 소프트웨어 개발을 한다는 것은 무엇일까/4 5 DevOps는 시너지이다 (역사 | 편집) [3,723 바이트] Admin (토론 | 기여) (새 문서: DevOps는 Development와 Operation의 합성어이다. 개발과 운영 함께 잘해보겠다는 것이다. 왜 이런 개념이 나왔을까? 원래 구축을 하고 운영으로 인수인계를 한다. 구축하는 사람들을 개발팀이라고 부르고, 그 구축된 시스템을 운영해주고 유지보수 해주는 팀을 운영팀이라고 부른다. 소프트웨어 개발은 사람이 하기에 사람에 대한 이해가 필요하다. 각각 소속된 사람은 어...)
- 2025년 2월 5일 (수) 16:20 4 소프트웨어 개발을 한다는 것은 무엇일까/4 4 형상관리는 소스 관리 (역사 | 편집) [2,313 바이트] Admin (토론 | 기여) (새 문서: 형상을 관리하는 프로세스이다. 프로그램에서 있어서 형상이라는 것은 프로그램 소스 내지는 설계 문서이다. 이 형상을 관리하는 것은 기존과 어떻게 달라진 것이 무엇이 달라진 것인지 누가 변경한 것인지가 기록되어지고, 확인이 가능해야 한다. 사실 대부분의 형상관리툴은 이 기능을 지원한다. Perforce, SVN이 대표적인 형상 관리 툴이다. GitHub도 대표적인 형상 관...)
- 2025년 2월 5일 (수) 16:20 4 소프트웨어 개발을 한다는 것은 무엇일까/4 3 개발 방법론의 진화, 요구공학이란 (역사 | 편집) [6,994 바이트] Admin (토론 | 기여) (새 문서: 개발 방법론은 여러가지가 있다. 개발을 어떻게 할 것인가의 문제인데, 과거 전통적인 방법론은 폭포수 방법론이였다. 폭포가 떨어지듯 순차적으로 개발을 진행하는 것이다. 기획 - 분석, 설계 - 개발 - 테스트 이 순서는 전통적인 개발의 순서이다. 어떤 것을 만들지 고민하고, 인터페이스라든가 기능을 설계하고, 해당하는 기능을 만들고 테스트하는 것이다. 이...)
- 2025년 2월 5일 (수) 16:20 4 소프트웨어 개발을 한다는 것은 무엇일까/4 2 프로젝트 관리에는 답이 없다 (역사 | 편집) [5,162 바이트] Admin (토론 | 기여) (새 문서: 프로젝트 관리에 답은 없다고 생각한다. 프로그램가 원하는 목표를 달성하면 된다. 그럼 어떻게 관리할 것인가? 원칙의 문제일 것이다. 사실 사람이 핵심인데, 이 이야기는 다음에 언급하고, 일단 프로젝트 관리의 원칙적인 얘기들을 하려고 한다. \- 일정관리, 범위 관리, 원가 관리, 품질 관리, 인력 관리, 의사소통 관리, 위험 관리 이러한 것들을 관리해야 한다....)
- 2025년 2월 5일 (수) 16:20 4 소프트웨어 개발을 한다는 것은 무엇일까/4 1 건축물의 구조 설계 같은 시스템 아키텍쳐 (역사 | 편집) [5,676 바이트] Admin (토론 | 기여) (새 문서: 시스템 아키텍쳐는 시스템의 서버들의 구성 모습이다. 구조라고 말할 수도 있다. 시스템 구성도로 표현을 하기도 한다. 서버간 연결하는 구성도만을 얘기하는 것은 아니고 좀더 깊은 내용까지 아키텍쳐라고 할 수 있다. 예를 들면 어떤 소프트웨어로 구성을 할지에 대한 것도 아키텍쳐라고 할 수 있다. 이렇게 아키텍쳐를 전문으로 구성하고 설계하는 사람들을 아키...)
- 2025년 2월 5일 (수) 16:20 3 프로그램 개발/3 7 코딩 테스트, 알고리즘 시험 준비 (자바 언어)/3 7 9 Dijkstra 알고리즘 (feat PriorityQueue) (역사 | 편집) [2,760 바이트] Admin (토론 | 기여) (새 문서: Dijkstra 알고리즘 최단 경로 알고리즘 - 노드간의 경로를 모두 가는데, 최단 거리 구하기 시작점이 있어야 함. 가중치에 마이너스가 있으면 사용할 수 없음. 1 - 자기 자신 가중치는 0, 자기 자신은 0 PQ에 거리가 가장 짧게 갈 수 있는 노드를 넣고, 거리도 넣고, 우선순위가 다시 정렬될테니 그 중 가장 짧은 거리를 가지는 노드를 빼고, 그 노드에서 다른 위치의 노드...)
- 2025년 2월 5일 (수) 16:20 3 프로그램 개발/3 7 코딩 테스트, 알고리즘 시험 준비 (자바 언어)/3 7 8 백트래킹 (BackTracking) (역사 | 편집) [1,439 바이트] Admin (토론 | 기여) (새 문서: backtracking 재귀를 이용한 완전 탐색 방법이다. 일단 문제의 값을 2차원 배열에 입력하고, 방문 여부를 점검한다. visit = new boolean[N]; ans = 0 ; backTracking(0, 0); 재귀함수 호출 ``` private static void backTracking(int depth, int sum){ // 종료 조건 if(depth == N){ ans = Math.max(ans, sum); return ; } for(int i = 0; i<N; i++){ if(!visit[i]) { visit[i] = true;...)
- 2025년 2월 5일 (수) 16:20 3 프로그램 개발/3 7 코딩 테스트, 알고리즘 시험 준비 (자바 언어)/3 7 7 위상 정렬 (Topological Sort) (역사 | 편집) [2,735 바이트] Admin (토론 | 기여) (새 문서: input : 정점, 간선 정보 TC 5 7 1 2 1 4 1 3 2 5 3 4 4 2 4 5 output 1 3 4 2 5 ``` public class Topology_Sort { static final int MAX = 101; static int[] visited = new int [MAX]; static int[] inputEdgeCount = new int[MAX]; static ArrayList<Integer> ordered = new ArrayList<>(); static ArrayList<Integer>[] adj = new ArrayList[MAX]; public static void main(String[] args) throws IOException { for(int i = 0; i<MAX; i++){...)
- 2025년 2월 5일 (수) 16:20 3 프로그램 개발/3 7 코딩 테스트, 알고리즘 시험 준비 (자바 언어)/3 7 6 유니온 파인드 (union find) (역사 | 편집) [1,823 바이트] Admin (토론 | 기여) (새 문서: 여러개의 그룹이 있을 때 합쳐서 값을 찾을 때 사용하는 알고리즘이다. ``` public class Union_Find { static int[] parent = new int[10]; public static void main(String []args){ for(int j = 0 ; j < parent.length; j++){ parent[j] = j; } } union(1, 9); union(3, 6); union(6, 7); union(9, 5); union(6, 8); System.out.println(find(1,8)); } private static void union(int...)
- 2025년 2월 5일 (수) 16:20 3 프로그램 개발/3 7 코딩 테스트, 알고리즘 시험 준비 (자바 언어)/3 7 5 자바 스택 코드 (stack) (역사 | 편집) [1,298 바이트] Admin (토론 | 기여) (새 문서: 자바에서 스택 코드는 제공하는 객체를 사용할 수 있다. 넣고자 하는 변수형을 Stack와 같이 선언시 포함해주면 된다. Stack stack = new Stack(); // 스택 선언 데이터를 추가 할 때 stack.add((int)num); 데이터를 꺼내 오고 Stack에서는 지워진다. stack.pop(); 데이터를 꺼내 오지만 Stack에서 데이터가 지워지지 않는다. stack.peek(); 데이터를 비울 대 stack.empty(); 개발자, 기술사, 삼...)
- 2025년 2월 5일 (수) 16:20 3 프로그램 개발/3 7 코딩 테스트, 알고리즘 시험 준비 (자바 언어)/3 7 4 재귀호출 (recursive) (역사 | 편집) [1,577 바이트] Admin (토론 | 기여) (새 문서: 자기 자신을 다시 호출하는 형태이다. Factorial이나 피보나치 수열 계산에서 사용할 수 있다. 피보나치 수열의 예이다. ` public static inc fibonachi(int num){ if(num == 0) { return 0; } else if(num<=2){ return num-1; } else { return fibonachi(num-1) + fibonachi(num-2); } } ` 구간 나눠서 값 확인 divide and conquer 에서도 재귀함수가 이용된다. ``` public static void divide(int x1, int y1, int x2, int y2){ i...)
- 2025년 2월 5일 (수) 16:20 3 프로그램 개발/3 7 코딩 테스트, 알고리즘 시험 준비 (자바 언어)/3 7 3 자바 정렬 (배열, 객체) (역사 | 편집) [1,696 바이트] Admin (토론 | 기여) (새 문서: 자바에서 정렬의 경우 배열과 같은 경우는 간단하게 Arrays.sort 함수를 이용하면 된다. ``` public static void main(String[] args) throws Exception { int arr[] = {4, 2, 5, 7, 8}; Arrays.sort(arr); } ``` 개발자, 기술사, 삼성, 외국계 IT기업 20년차 기술노트 알렉이 직접 작성한 IT기업 기술 면접을 위한 CS + 면접 노하우 PDF <https://kmong.com/self-marketing/539751/LUA54VnQsP> 자주 나오는 CS 질문과 답...)
- 2025년 2월 5일 (수) 16:20 3 프로그램 개발/3 7 코딩 테스트, 알고리즘 시험 준비 (자바 언어)/3 7 2 깊이 우선 탐색 DFS(Depth First Search) (역사 | 편집) [1,190 바이트] Admin (토론 | 기여) (새 문서: 데이터를 탐색할 때 깊이로 먼저 탐색을 하는 알고리즘이다. 신기하게도 main 함수 내에서 dfs(1) 이런 식으로 호출을 하면 방문을 하면서 재귀 호출을 통해서 탐색이 된다. ``` main(){ dfs(1); } static void dfs(int u) { visited[u] = 1; for(int v : adj[u]){ if(visited[u] == 0) dfs(v); } } ``` 개발자, 기술사, 삼성, 외국계 IT기업 20년차 기술노트 알렉이 직접 작성한 IT기업 기술 면접을 위한 CS...)
- 2025년 2월 5일 (수) 16:20 3 프로그램 개발/3 7 코딩 테스트, 알고리즘 시험 준비 (자바 언어)/3 7 1 너비 우선 탐색 BFS(Breadth-first search) (역사 | 편집) [2,277 바이트] Admin (토론 | 기여) (새 문서: BFS는 가장 기본적인 탐색 알고리즘이다. ``` public static void bfs(int start, int end) { int count = -1; boolean visited[] = new boolean[10000]; //int 배열로 초기화한 queue Queue<int[]> qu = new LinkedList<int[]>(); qu.add(new int[] {start,0}); //처음에 큐에 {start,0} 넣음 while(!qu.isEmpty()) { //빼기전에 num, cnt에 넣기 int num = qu.peek()[0]; in...)
- 2025년 2월 5일 (수) 16:20 3 프로그램 개발/3 6 앱 개발 어떻게 하지/3 6 6 오픈소스는 소스 오픈 왜 (역사 | 편집) [3,849 바이트] Admin (토론 | 기여) (새 문서: 오픈소스는 말그대로 소스를 오픈한 것이다. 오픈 소스의 말이 어렵다기 보다는 왜 오픈을 했을까에 관심을 둘 필요가 있다. 왜 오픈인가? 플랫폼을 오픈 것에 대해서는 이해하기 쉽다. 오픈을 함으로써 플랫폼을 많이 사용하고, 플랫폼 사용자가 많으면 그 플랫폼은 가치가 생긴다. 쉽게 말하면 중고나라라는 카페를 만든 사람은 제공자 입장이고, 수고스러움을 통...)
- 2025년 2월 5일 (수) 16:19 3 프로그램 개발/3 6 앱 개발 어떻게 하지/3 6 5 파이썬이 나온지가 어언 20년 (역사 | 편집) [3,697 바이트] Admin (토론 | 기여) (새 문서: 파이썬이 나온지는 꽤 오래 되었다. 1991년에 귀도 반 로섬에 의해서 개발되어졌다고 한다. 그러면 20년도 넘게 흐른 것이다. 파이썬이 각광을 받은 것은 최근 10년일 것이다. 오래 되었지만, 어떤 언어들은 사라지거나 사용이 되지 않는 언어도 있는데 파이썬은 오히려 그 존재 가치가 더 인정받게 되었다. 파이썬이 개발이 굉장히 쉽다는 장점이 있다. 기존 C, Java등이...)
- 2025년 2월 5일 (수) 16:19 3 프로그램 개발/3 6 앱 개발 어떻게 하지/3 6 4 스크립트로 서버 개발하는 node js (역사 | 편집) [2,944 바이트] Admin (토론 | 기여) (새 문서: node.js는 javascript형태의 서버 사이드 언어이다. 서버를 개발할 수가 있다. 기존 대개는 javascript라고 하면 클라이언트 사이드 언어로 생각했다. 화면을 제어하는 정도 사실 javascript의 시초가 네츠케이프사 이젠 유물이 되어 버린 이 브라우저를 만들 당시에 간단한 화면 제어라든가 이미지 변경 정도 홈페이지에서 필요한 몇가지를 만들려고 제작을 했다고 한다. 그래...)
- 2025년 2월 5일 (수) 16:19 3 프로그램 개발/3 6 앱 개발 어떻게 하지/3 6 3 모바일앱 vs 모바일웹 vs 하이브리드앱 (역사 | 편집) [4,627 바이트] Admin (토론 | 기여) (새 문서: -안드로이드, 아이폰, 모바일웹, 모바일웹앱, 모바일앱 스마트폰 어플리케이션은 이제 실생활에 너무 많이 쓰여서 너무 익숙하다. 일상이 스마트폰으로 시장해서 스마트폰으로 끝난다고 볼 수도 있다. 아침 알람도 스마트폰이고, 신문도 스마트폰으로 보고, 대화도 스마트폰으로 하고 주식, 게임, SNS등 모든 것을 스마트폰으로 할 수 있다. 스마트폰의 활용이라든가...)