개발(3)
-
자료구조 (2) 소프트웨어 공학 원리
소프트웨어 공학 원리 1. S/W revolution 1) 프로그래밍 초기 단계 - 프로그래밍은 단순한 문제 해결만 가능하고 적은 수의 프로그래머밖에 없었다. 또한 컴퓨터의 큰 비용 문제가 있었다. - 프로그램의 목적은 문제 해결을 위한 방법 및 행위에만 초점을 맞췄다. - 군사용으로 등장했다. 또한 컴퓨터가 과학자들보다 몸값이 높았다. 이에 따라 컴파일 과정을 수작업으로 진행했다. 2) 프로그래밍 과도기 - 프로그래밍은 보다 큰 문제 해결을 위한 것에 목적이 있었지만 역시나 문제 해결을 위한 방법에 초점을 맞췄다. - 타이트한 데드라인에 맞춰 개발 - 대표적인 언어가 c언어임 3) 프로그래밍 현재 - 프로그래밍은 아주 큰 문제 해결에 초점을 맞추고 문제 해결 방법보단 데이터가 더 중요하다. - 항상 가..
2022.03.17 -
소프트웨어 공학 (2) 소프트웨어 공학의 윤리 와 케이스 스터디
소프트웨어 공학 윤리 - 소프트웨어 공학은 단순히 기술을 넘어서 윤리적인 책임과 의무도 이야기함 - 공무원뿐만이 아니라 대부분 회사는 윤리사항은 인사 조항에 명시를 해놓음 -> 이를 지켜야함 Confidentiality - 본인이 개발한 내용을 관련없는 다른 사람들에게 얘기하지 말기 Competence - 본인이 할 수 있는 능력에 대해 정직하게 얘기해야함 지적 재산권 - 특허와 같은 지적재산권을 지켜야함 - 오픈소스와 관련된 라이센스를 지켜서 활용해야함 Computer misuse - 지급받은 컴퓨터, 소프트웨어 등을 업무 이외의 목적으로 사용하지 않기 ACM/IEEE Code of Ethics - 두 학회에서 소프트웨어를 다루는 사람부터 전기를 다루는 엔지니어가 지켜야하는 윤리 사항을 명시해놓음 - ..
2022.03.15 -
백준 온라인 저지, 구현/12100번: 2048(easy)(파이썬 / 백준 골드문제)
문제 https://www.acmicpc.net/problem/12100 문제 정의 2048 게임은 4×4 크기의 보드에서 혼자 즐기는 재미있는 게임이다. 이 링크를 누르면 게임을 해볼 수 있다. 이 게임에서 한 번의 이동은 보드 위에 있는 전체 블록을 상하좌우 네 방향 중 하나로 이동시키는 것이다. 이때, 같은 값을 갖는 두 블록이 충돌하면 두 블록은 하나로 합쳐지게 된다. 한 번의 이동에서 이미 합쳐진 블록은 또 다른 블록과 다시 합쳐질 수 없다. (실제 게임에서는 이동을 한 번 할 때마다 블록이 추가되지만, 이 문제에서 블록이 추가되는 경우는 없다) 이 문제에서 다루는 2048 게임은 보드의 크기가 N×N 이다. 보드의 크기와 보드판의 블록 상태가 주어졌을 때, 최대 5번 이동해서 만들 수 있는 가..
2021.07.20