본문 바로가기

컴퓨터/언어,프로그래밍

C#과 MFC 중 어느것이 취업에 잘 나갈수 있나요? 답은 C#입니다. 지금 당장 눈앞을 보지 마시고 조금만더 미래를 보고 준비하신다면 C#준비 하시는게 맞습니다. API는 이미 한참 늦은데다가 공부하는데 1년이 필요한 것이 문제가 아니라 배워봐야 써먹을데가 없다는게 문제입니다. 게임을 개발 하실 거라면 윈도우 창만 열 줄 알면 모든게 끝납니다. 윈도우 응용 프로그램의 원리를 이해하겠다고 API부터 파는 것 자체가 지금 이시점에서는 한참 까마득히 먼 옛날에 사용하던 구식 자동차의 엔진을 뜯어 보면서 지금의 자동차들의 새로운 엔진을 알 수 있을거라 생각하는 것과 전혀 다를게 없다는 겁니다. 그리고 MFC의 원래 목적이 구조체로된 API를 클래스화 시켜서 불필요한 코딩에 의해서 낭비되는 시간을 막아 개발 시간을 단축시키는데 있었습니다. 그런데 그것도 이미 한물.. 더보기
C언어, C++, C#, JAVA, Visual C++, MFC, Direct X? 1 .처음에는 C부터 배우시는게 좋습니다. 뭐 굳이 설명하지 않겠습니다. C는 그냥 프로그래밍 입문의 기본쯤 된다고 생각하시면 됩니다 2 . C++ 을 다음으로 배우시는게 좋습니다 C++은 C와 달리 객제지향성프로그램이기때문에 C를 알고 배우면 더욱 쉽게 알 수 있습니다. ( Class의 개념 , 객체지향프로그램의 필요성 상속, 다형성, 캡슐화 , Try-catch , operator연산자 , 오버로딩 , 오버라이딩 등등 ) C와는 다른것들이 많이 있습니다 그리고 JAVA와 C#도 객체지향 프로그램 언어 이기때문에 C++로 개념을 익히고 가시면 좋죠~ 3. API ( Apllication programming interface ) 보통 C와 C++을 배울때에는 console모드로 배우게 됩니다. cons.. 더보기
MFC TIP 1. DC얻기 CClientDC dc(this); 2. Client 영역 구하기 GetClientRect(&rect); WM_SIZE 메시지발생후 cx,cy 사용 3. 문자열 사각형안에 그리기 pDC->DrawText(문자열,사각형,Style); Style : DT_BOTTOM - 문자열을 사각형 맨아래줄에배열 반드시DT_SINGLELINE과 함께사용 DT_CENTER - 문자열을 가로중앙에 배치 DT_VCENTER - 문자열을 세로중앙에 배치 DT_LEFT,RIGHT - 문자열을 좌,우로 배치 DT_SINGLELINE - 문자열을 한줄로만 쓴다 4. Brush 사용법 CBrush brushname(RGB(red,green,blue)); //브러쉬 생성 //이전Brush 저장, 새로운 Brush 선택 C.. 더보기
프로그래머 이력서 10계명 #1: 보유 기능 목록을 제일 앞에 올리라 고용 담당자는 회사가 찾고 있는 기능을 보유하고 있는지 알고 싶어 한다. 물론 "경력" 란에 구직자의 보유 경력이 잘 나오겠지만, 이력서 상단에 "보유 기능" 란을 넣으면 자연스럽게 그 부분을 제일 먼저 보게 된다. 당연히 그런 이력서를 고르기가 더 쉽다. 동시에 그렇게 하지 않았다면 고용 담당자들이 놓쳐버렸을 수 있는 기능에 관심을 가지게 한다는 장점도 있다. 최소한 고용 담당자는 그 보유 기능 목록을 보게는 된다. #2: 눈길을 끄는 방식으로 경력을 소개하라 일자리를 구하는 대부분의 개발자들은 데이터 중심형 웹 사이트나 데스크톱 애플리케이션을 만든 적이 있다. 따라서 이력서에 그런 일반적인 예를 잔뜩 써 넣는 것은 별로 눈길을 끌지 못한다. 장래의 고용주가 .. 더보기
비쥬얼하게 살펴보는 소트 알고리즘 정렬과정을 비쥬얼하게 보여줌으로써, 각종 정렬알고리즘을 보다 쉽게 이해할 수 있습니다. Quick Sort 머지소트(:12) Bubble Sort Selection Sort Insertion Sort 이 자바애플릿 프로그램은 http://math.hws.edu/TMCM/java/xSortLab 에서 배포되고 있습니다. 이 문서를 제대로 확인하기 위해서는 JRE가 설치되어 있어야 합니다. JRE는 http://www.java.com/en/download/help/5000010400.xml 에서 다운로드 받을 수 있습니다. 더보기
Quick Sort 알고리즘 Quick 정렬은 버블정렬과 함께, 가장 쉽게 응용할 수 있는 정렬기법이다. 평균적으로 O(n log n)번의 비교를 수행하며, 최악의 경우에 O(n^2)의 비교를 수행하도록 되어 있다. 정렬할 데이터가 이미 준비되어 있으며, 모든 데이터를 정렬해야 할경우 가장 빠른 수행속도를 보여주는 알고리즘으로 평가되고 있다. 소트효율가장 비효율적인 '''버블소트'''는 O(N^2)이고, 퀵소트는 평균 O(NlogN)이다. 아무리 뛰어난 정렬 알고리즘(:12)을 개발한다고 하더라도, 데이터의 갯수가 N이면 O(NlogN)보다 더 좋을 수 없다는 것이 증명되어 있다. 즉 정렬알고리즘의 lower bound는 O(NlogN)이다. 단 최대값이 정해져 있는 데이터라면 counting 방식을 쓸수 있고 - counting .. 더보기
전처리문에 대한 설명 실질적인 컴파일 이전에 미리 처리되는 문장으로 선행처리기라고도 한다. 컴파일러는 사용자가 작성한 코드를 컴파일하기에 앞서 전처리문에서 정의해 놓은 작업들을 먼저 수행한다. 종류로는 #define, #if, #ifdef, #ifndef, #defined, #undef 등이 있다. 이것은 기존에 있는 방대한 소스 코드를 지우지 않고 활성화와 비활성화하는 데에 가장 많이 이용된다. 즉, 기존에 있는 소스 코드를 건드리지 않고 부분적인 컴파일을 하는 것이다. C의 전처리문이 오는 줄(Line)의 첫 문자는 항상 '#'으로 시작한다. ANSI 표준에 따른 C의 전처리문의 종류 - 파일 처리를 위한 전처리문 : #include - 형태 정의를 위한 전처리문 : #define, #undef - 조건 처리를 위한 전처.. 더보기
문자열 배열 정렬(소트;Sort)역순 소팅, qsort 함수 사용법 문자열을 정렬, 즉 가나다 순으로 소팅하는 예제입니다. stdlib.h 헤더파일에 정의되어 있는 qsort() 함수로 쉽고 빠르게 정렬할 수 있습니다. 정수 배열을 소팅하는 법은 여기에 있습니다: ▶▶ C언어] 숫자 정수 int 배열 정렬(소트Sort소팅) 역순/내림차순 정렬 문자열 정렬 예제 소스 코드 파일명: 0.cpp #include #include // qsort() #include // strcmp() int comparisonFunctionString(const void *a, const void *b); int main(void) { const int ELEMENTS = 8; // 요소 개수 char array[ELEMENTS][6 + 1] = { "맹구", "배용준", "땡칠이", "장동건.. 더보기