반응형
파이썬(Phyton) 파이썬 언어는 아주 간결합니다. 언어자체의 문법도 단순하고 실행환경도 편리합니다. 프로그램 초보 개발자도 접하기 쉽고 전문가도 파이썬의 데이터 타입, 기본 함수, 중요 모듈을 학습하면 원하는 프로그램을 짜는 데 시간이 많이 걸리지 않습니다. 데이터 구조인 문자열, 리스트, 딕셔너리 등을 기본적으로 제공하고 있으며 C와 같은 언어보다 코드 줄 수가 적기 때문에 프로그램 오류 가능성도 낮습니다. Java와 파이썬의 문자열 리스트 비교인데요 한번 보겠습니다. 1.Java String[] cities = {"Incheon","Busan","Seoul"}; for(int i=0; i < cities.lenth; i++) { System.out.println(cities[i]); } 2.Phy..
해시테이블은 Bucket배열에 Key, Value Entry를 저장하고 인출하는 구조입니다. 해시테이블 클래스는 Bucket 배열을 기본 데이터 필드로 가집니다. Chaining 방식으로 해시 충돌 문제를 해결하는 해시테이블에 대해 살펴볼 건데요, 해시테이블에서 자주 사용되는 주요 메서드는 아래와 같습니다. 1. Add(Key, Value) 메서드 해시테이블에 새로운 Key, Value 엔트리를 추가하는 메서드입니다. 입력된 Key를 해시함수를 사용해 Bucket 주소로 변환하면서 이 Bucket에 Key, Valuㄷ 엔트리를 추가합니다. 해당 Bucket 주소에 다른 엔트리가 있다면 Bucket의 엔트리 연결 리스트(Linked List) 앞부분에다가 새 엔트리를 넣습니다. 연결리스트의 마지막까지 이동..
자료구조 배열(Array) 배열은 연속적인 메모리 상에 동일한 데이터 타입의 요소들을 순차적으로 일렬로 저장하는 자료구조입니다. 순차적으로 나열된 배열요소는 각 요소마다 Index를 붙이는데 배열을 A라고 했을 경우 첫 배열요소는 A[0], 두번째 배열요소는 A[1], ... 등 으로 배열 index를 붙입니다. 하나의 배열은 고정된 크기를 가지고 배열 index를 사용할 경우 배열요소를 바로 접근할 수 있습니다. 배열A가 100개 배열요소가 있는 가정하에 A[0], A[50], A[99] 등 접근하는 시간은 동일하고, 모두 해당 요소를 즉시 접근하여 배열요소 값을 읽거나 쓸 수 있습니다. 배열은 프로그래밍 언어에서 사용하는 아주 기초적인 자료구조입니다. C#의 배열은 배열 객체로서 메모리 상에 배열에 ..
.NET 어셈블리 여러종류의 구성요소를 알아보겠습니다! 첫번째 구성요소로 어셈블리 매니페스트가 있습니다. 어셈블리 매니페스트는 어셈블리의 버전 요구사항과 보안ID를 지정하는 데 필요한 모든 메타데이터와 어셈블리의 범위를 정의하고 참조를 확인하는데 필요한 모든 메타데이터를 포함하고 있습니다. 어셈블리 매니페스트는 어셈블리 이름, 버전번호, 문화권, 강력한 이름의 정보, 어셈블리에 포함된 파일 목록, 형식 참조정보로 구성됩니다. 그리고 어셈블리에 정의된 형식들에 대한 형식 메타 데이터와 실제 수행해야 할 코드인 MSIL과 리소스로 구성됩니다. 어셈블리는 하나의 물리적 바이너리로 되어 있는 단일 파일 어셈블리와 여러 개의 물리적 바이너리로 되어있는 다중 파일 어셈블리로 나눌 수 있습니다. .NET에서는 어셈블..
Windows Presentation Foundation 의 약자로서 Window 기반 응용프로그램에서 사용자 Interface를 표시하기 위한 목적으로 Microsoft에서 만든 그래픽 서브시스템입니다. WPF는 2D/3D 렌더링, 고정 및 가변 문서, 타이포그래피, 벡터 그래픽스, 실시간 애니메이션, 프리렌더링 미디어와 같은 여러가지 보편적인 사용자 인터페이스들을 통합하는 것을 목적으로 합니다. 이러한 요소들은 다양한 이벤트, 사용자 인터랙션, 그리고 데이터 바인딩에 기반하여 연결 및 처리될 수 있습니다. WPF는 다양한 인터페이스 요소들을 정의하고 연결하기 위해 XML 기반의 언어인 XAML을 채택했습니다. WPF 응용프로그램은 데스크탑에서 단독으로 실행될 수도 있고 웹사이트에 내장된 객체로 서비스..
C# 프로그래밍 정의 및 특징 C#이란? Microsoft에서 개발한 객체 지향 프로그래밍 언어입니다. .NET Framework 기반에서 동작하는 프로그램을 개발할 때 사용하는 프로그래밍 언어입니다. c# 언어는 표현력이 뛰어나면서도 단순하고 배우기 쉽게 되어 있습니다. 이미 C++, Java에 익숙한 사용자라면 쉽게 사용할 수 있으며 높은 생산성을 발휘할 것입니다. C#을 통하여 다룰 수 있는 닷넷 플랫폼의 기술들조차도 Java(자바)를 염두에 둔 것이 많아서 자바와 가장 많이 비교되곤 합니다. Java는 C ++를 바탕으로 개량을 더한 언어로 멀티 플랫폼에서 동작하고 GUI 프로그램을 작성하는 라이브러리가 표준으로 포함되어 있습니다 .NET플랫폼에 강하게 의존하는 프로그래밍 언어이고 C#은 .NET..