본문 바로가기
반응형

프로그래밍57

html <div>로 메뉴(내비게이션) 만들기1 ●세로 메뉴 1111 2222 3333 4444 결과 1111 2222 3333 4444 ●li안에 이미지를 세로로 나열할 때 이미지 사이에 여백이 생길경우, img속성에 'vertical-align:top;'로 설정한다. ●가로 메뉴 1111 2222 3333 4444 결과 1111 2222 3333 4444 ●li안에 'display:inline;'를 적용하면 가로로 배열이 된다. ●li안에 이미지를 가로로 나열할 때 이미지 사이에 여백이 생기는 경우, li안에 'float:left;'로 설정한다. 2012. 5. 30.
html <div>로 웹사이트 레이아웃 구성하기2 ●웹표준 레이아웃 a b c d ●#wrap{margin:0 auto; width:900px;} - table에서는 align="center"로 중앙 정렬을 했지만, 웹표준에서는 따로 중앙정렬은 없다. 그래서 중앙정렬을 하려면 가장 바깥 div에 'margin:0 auto'를 선언해 준다. 'margin:0'은 상하 0px라는 뜻이고 'auto'는 좌우를 중앙에 위치하게 한다. ●큰 div(wrap,header,sidebar,content,footer 등)를 만들고 그 안에 세부적인 div를 만든다. 큰 div는 height값을 주지 않고 세부적인 div에 height를 준다. ●width, margin, padding, height 수치를 정확히 계산해서 레이아웃을 만든다. 만들 레이아웃 디자인을 프린.. 2012. 5. 28.
DTD((Document Type Definition) 개념 ●DTD(Document Type Definition) - 웹브라우저가 웹페이지를 동일한 기준에 의해 해석 되도록 문서의 타입을 선언하는 것이다. 이클립스 사용시 파일을 생성하면 이클립스가 자동으로 dtd를 선언해준다. ●DTD는 여러가지 종류가 있다. html페이지 제일 위에 선언해야한다. 엄격모드를 사용하는 것이 정확한 웹표준을 따르는 것이지만 우리나라의 브라우저 사용실태를 고려하면 하위 버전의 브라우저에서도 호환되어야 하기 때문에 호환모드를 사용해야 한다. ex) html 4.01 Transitional(호환모드) html 4.01strict(엄격모드) 2012. 5. 25.
html <div>로 웹사이트 레이아웃 구성하기1 ●형태 #wrap{width:1000px;} #header{width:1000px; float:left;} #sidebar{width:300px; float:left;} #content{width:700px; float:left;} #footer{width:1000px; float:left;} header sidebar content footer ●html의 와 css로 레이아웃 구성하기 예 header sidebar content footer ● wrap - 레이아웃 전체를 묶어서 wrap안에 있는 div들이 깨지지 않고 자리를 잘 잡게 하기 위한 테두리이다. header - 넓이값과 float으로 위치를 잡아주면 된다. sidebar, content - sidebar와 content의 합은 레이아웃 .. 2012. 5. 22.
모바일 웹 프로그래밍 - 주소창 보이지 않게 하기 ●화면을 밑으로 스크롤하면 주소창이 보이지 않게 하는 스크립트를 2012. 5. 15.
모바일 웹 개념 ●모바일 어플리케이션의 종류 네이티브 앱(Native App) - 모바일 기기에 직접 설치되고 사용되어지는 어플리케이션이다. 모바일 웹(Mobile Web) - 모바일 웹브라우저에 의해 실행되는 웹 사이트로 일반적인 웹사이트를 모바일로 옮긴 형태를 말한다. 하이브리드 앱(Hybrid App) - 웹과 네이티브 앱의 중간 형태이다 모바일 웹앱(Mobile Web App) - 모바일 웹의 한 형태이지만 일반적인 웹보다 모바일에 더 최적화되고 네이티브 어플리케이션화된 형태를 표현한다. ●모바일 웹은 기존의 웹사이트를 바탕으로 레이아웃만 모바일 환경에 맞게 바꾸는 것이기 때문에 기존 일반 웹기술을 바탕으로 구현된다. 그래서 모바일 웹을 공부하기전 일단 기존 웹기술(jsp, sql, 웹서버 등)을 먼저 배워야 한.. 2012. 5. 6.
프로그래밍 프로젝트 팀 구성원 ●회사와 팀마다 약간의 명칭이 다를 수 있다. 프로젝트와 회사 규모에 따라 한 팀에 수명에서 수십,수백명이 있을 수 있고, 한명이 여러개의 직무를 할 수도 있다. ①프로젝트 관리자, 프로젝트 매니저, Project Manager, PM - 프로젝트 시작부터 끝가지 프로젝트를 이끌어 간다. 프로젝트 명세서를 작성하고, 일정을 관리하고, 중요한 결정과 처리를 하고, 고객을 만나 고객 요구사항을 관리한다. ②아키텍트(Architect), 시스템 엔지니어 - 소프트웨어를 위한 전반적인 시스템 구조나 설계를 검증한다. ③프로그래머, 개발자, 코더 - 소프트웨어 코드를 작성하고 디버깅한다. ④테스터, QA(품질 보증) - 소프트웨어의 문제점과 버그를 찾아내고 보고하는 업무를 수행한다. ⑤기타 - 소프트웨어 디자이.. 2012. 3. 4.
안드로이드 액티비티의 화면 구성하기-레이아웃(layout) ●안드로이드 어플리케이션의 화면을 구성하는 뷰는 위젯(Widget)과 레이아웃(Layout)으로 나뉜다. 위젯에는 텍스트를 표시하는 TextView, 그림을 표시하는 ImageView, Button, CheckBox, RadioButton, EditText 가 있다. 위젯은 사용자의 입력을 받거나 화면에 데이터를 표시한다. 레이아웃은 위젯들을 화면에 어떻게 배치할지 결정하는 컨테이너 역할을 한다. 레이아웃은 뷰를 상속받은 위젯을 포함할 수 있기 때문에 뷰그룹(ViewGroup)이라고도 한다. ●일반적으로 윈도우 응용 어플리케이션의 경우 레이아웃을 작성할 때는 구성요소를 마우스로 끌어 드로그앤 드롭으로 원하는 좌표에 놓는 방식으로 화면을 구성하는데, 안드로이드는 주로 상대적인 위치를 지정하여 레이아웃을 지.. 2012. 3. 1.
안드로이드 인텐트(intent) 개념 정리 ●인텐트(intent) 개념 - 어플리케이션 구성요소를 호출하거나 메시지를 보낼 때 사용하고, 정보의 형태에 따라 명시적 인텐트(Explicit Intent)와 암시적 인텐트(Implicit Intent)로 나뉜다. ●인텐트가 포함할 수 있는 정보의 종류 ① 컴포넌트의 이름 - 호출할 액티비티, 서비스나 메시지를 보낼 브로드캐스트 리시버 등의 이름을 포함한다. 이때 인텐트를 받을 대상 컴포넌트의 이름을 직접 입력하면 명식적 인텐트이다. ② 액션(Action) - 인텐트를 통해 수행할 동작을 지정하거나 브로드캐스트 메시지일 경우 특정 상태를 의미한다. 안드로이드의 기본 액션 외에 사용자가 액션을 만들어 사용할 수도 있다. 인텐트는 하나의 액션만을 가진다. ex) 액션 대상 컴포넌트 의미 android.in.. 2012. 2. 26.
안드로이드 매니페스트(manifest) ●매니페스트(AndroidManaifest.xml) - 매니페스트는 어플리케이션의 각종 정보를 저장하고 있는 신분증같은 역할을 한다. ●메티페스트의 구성 ① 태그 - 어플리케이션에 대한 전반적인 정보들을 포함한다. xmlns:android는 항상 다음과 같은 네임스페이스를 지정해야한다. packpge는 어플리케이션의 패키지 이름을 지정한다. android:versionCode는 어플리케이션의 버전코드이다. android:versionName는 어플리케이션 버전이다. ex) ② 태그 - 어플리케이션의 이름, 아이콘등을 정의한다. android:icon은 어플리케이션의 아이콘을 지정한다. android:label은 어플리케이션의 이름을 지정한다. 태그는 아휘요소로 어플리케이션의 구성요소(액티비티, 서비스, .. 2012. 2. 25.
안드로이드 리소스(Resources) ●리소스 - 어플리케이션에 사용하는 소리, 이미지, 레이아웃, 문자열 등이다. 리소스는 소스코드와는 별도로 존재하며 각각을 수정해도 서로에게 영향을 미치지 않는다. 리소스의 종류에 따라 저장 위치가 다르다. ●소스코드에서 리소스 참조하기 - 프로젝트에 리소스를 추가하면 각 리소스의 id가 자동으로 생성된다. " R.리소스종류.리소스이름 " 를 사용하여 참조할 수 있다. -프로젝트 내의 리소스 외에도 시스템마다 통일성을 유지하기 위해 " android.R.리소스종류.리조스이름 "으로 안드로이드 시스템을 참조할 수 있다. ex) R.string.abcd //이름이 abcd인 문자열 R.layout.main //이름이 main인 레이아웃 R.id.text //id가 text인 리소스 android.R.id.t.. 2012. 2. 23.
안드로이드 어플리케이션 구성 요소(개발 환경 관점)  ●자바코드 ① src - 액티비티, 서비스, 콘텐트 프로바이더,브로드캐스트 리시버 등 어플리케이션 구성요소와 어플리케이션에서 사용되는 클래스의 코드가 저장되는 곳이다. ② gen - 그림, 음악,문자열 등 여러 리소스를 자바 코드에서 사용하려면 해당 리소스를 참조할 수 있는 주소가 있어야 한다. 이클립스 플러그인인 ADT에서는 리소스를 참조할 수 있는 주소를 생성한 후, 이 값들을 리소스 종류에 따라 나누어 R.java로 생성해 준다. R.java는 리소스가 바뀔때 마다 ADT가 자동으로 생성하는 파일이므로, 개발자가 직접 수정할 필요는 없다. ●리소스 - 리소스는 음악, 그림, 문자열 등으로 리소스 이름은 영어 소문자, 숫자, 밑줄(_), 마침표(.)만 사용가능 ①drawable - 어플리케이션에서.. 2012. 2. 22.
안드로이드 어플리케이션 구성요소(이론적 관점) ●액티비티(Activity) - 어플리케이션의 한 화면을 의미한다. 액티비티는 액티비티의 상태와 액티비티의 생애주기에 따라 생성되거나 소멸된다. 그래서 액티비티의 상태와 생애주기에 대해 잘 알고 있어야만 빠르고 효율적인 어플리케이션을 만들 수 있다. ●서비스(Service) - 화면에 표시되는 액티비티와 달리 서비스는 백그라운드에서 실행된다. 예를 들어 화면이 꺼지거나 다른 어플을 띄워도 계속 재생되는 음악같은게 있다. 음악 재생 부분을 서비스에 구현해야 액티비티의 동작과 상관없이 음악을 계속 재생할 수 있다. 서비스는 자신의 동작 여부를 알림 메시지나 토스트를 통해 사용자에게 알린다. ●알림 메시지(Notification) - 알림 바, 알림 패널, 소리, 진동,led점멸 등을 통해 사용자에게 특정 이.. 2012. 2. 22.
c++ 기본 문법 정리4 ●템플릿 함수 - 인수나 반환값의 형을 모호한 상태로 정의하는 함수. 템플릿 함수의 기능을 사용하면, 복수의 형에 대응하느 함수를 만들 수 있다. 컴파일러는 템플릿 함수를 호출하는 부분을 발견하면, 이것들을 구체적인 함수로 만든다. ex) template T Aaa(T a, T b){ //템플릿 인수(T) 부분에 int형이나 double등 자료형이 치환된다. T buf; ~~ } int a=100, b=200, c; c=Aaa(a, b); //템플릿 인수가 int로 치환 ●템플릿 함수의 이용 - 템플릿 함수를 이용하면 내용은 거의 동일하지만 형이 다른 함수를 하나로 만들 수 있다. ●템플릿 클래스 - 사용하는 형을 모호한 상태로 정의하는 클래스. 템플릿 클래스 기느을 사용하면 복수의 형에 대응하는 클래스.. 2012. 2. 17.
c++ 기본 문법 정리3 ●new 연산자 - 오브젝트를 동적으로 생성할 때 사용 ex) A *a; a=new A; A *a=new A; ●delete 연산자 - new연산자로 확보한 메모리는 delete연산자로 해체해야한다. ex) A *a=new A; delete a; ●new, delete를 이용해서 int형 등의 메모리 확보, 해체 ex) int *a=new int; delete a; //malloc,free를 쓸경우 int *a=(itn *)malloc(sizeof(int)); free(a); ●malloc()함수보다 new연산자를 사용하는 것이 간단하기 때문에 권장 ●new연산자를 이용한 배열용 메모리 확보, 해체 ex) a=new[10]; //[]안에 숫자 적어야 함 delete []a; //delete뒤에 '[]'기.. 2012. 2. 17.
c++ 기본 문법 정리2 ●c언어에서는 배열사이즈를 정의할 때 상수선언을 #define으로 했지만, c++에서는 const로 할 수 있다. 가능한 const를 사용하는게 좋다 ex) c언어 #define B 10 int main(){ int b[B]; } c++ int main(){ const int B; int b[B]; } ●함수의 디폴트 인수 설정 - 거의 매번 같은 값을 가지지만 가끔씩 변경해야할 경우에 사용하면 편리 ex) 프로토 타입에서 설정 double A( int a=1, double b=3.1); 함수 정의에서 설정 double A( int a=1, int b=3.1){ ~~ } ●디폴트 인수 설정된 함수 호출 ex) double area; area=A(); //아무 것도 없으면 디폴트인수로 된다 area=A(1.. 2012. 2. 16.
c++ 기본 문법 정리1 ●c++은 객체지향 프로그래밍 언어이다 ●확장자는 '.cpp' 사용 ●c++ 기본구조 ex) #include int main(){ std::cout 2012. 2. 16.
c언어 기본 문법 정리4 ●연산에서 조건이 true면 1을 반환, false면 0을 반환 ●sizeof 연산자 - 변수나 자료형이 메모리를 점유하는 크기를 바이트 단위로 구함 ex) int n,m; n=sizeof(int); m=sizeof(n); ●문자열 선언 - 배열 이용 ex) char a[]="Hello"; char a[6]="hello"; ●문자열은을 복수 문자의 집합으로 이것을 담아두기 위해서 배열을 이용한다 ●문자열 함수 - 프로그램 첫머리에 #include 써야함 - strlen() - 문자열 길이 반환 ex) char s[]="abc"; int a; a = strlen(s); - strcpy() - 문자열을 복사 ex) char s[6]; strcpy(s, "abc"); - strcat() - 문자열 결합 ex).. 2012. 2. 4.
c언어 기본 문법 정리3  ●포인터 - 메모리의 주소값을 저장하기 위한 변수 ● &a - 변수 a의 주소값을 반환 *a - 포인터a가 가리키는 메모리를 참조 ●* - 곱셈 ex) a*b - 포인터 선언 ex) int *a -포인터 접근 ex) *a ●배열 이름은 포인터 상수이다. 배열이름은 첫번재 요소의 주소값이다 ex) int a[5]={~~~}; // 여기에서 'a'가 배열 이름이고 배열의 첫번째 요소의 주소를 저장하는 포인터이다 ●문자열은 주소값으로 저장된다, 그래서 문자열선언은 배열을 만들어서 한다 ex) chat a[5]="good"; char *str="abcd"; ● 직접접근 - 변수를 통한 접근 간접접근 - 포인터를 이용한 접근 ●구조체 ex) struct A{ int x; int y; }; struct A a;.. 2012. 2. 4.
c언어 기본 문법 정리1  ●c언어의 기본구조 ex) #include int main(){ printf("Hello World\n"); return 0; } ●주석 //~~ /* ~~ */ ●서식문자 %d - 정수 %c - 문자 %s - 문자열 %f - 실수 . . . ●변수 이름은 대소문자 구분, 될수 있으면 의미를 지니는 이름으로 지정하는게 좋다 ●";(세미콜론)"은 문장의 끝을 나타냄 ●변수를 선언할 경우 변수를 사용하기전에 먼저 선언해야 한다 ● ++a - 선 증가, 후연산 a++ - 선 연산, 후증가 ●읽기 쓰기 ex) int val; scanf("%d", &val); //scanf에서는 &사용해야한다 printf("%d", val); ●컴퓨터는 내부적으로 int형 연산을 가장 빠르게 처리한다 ●double형으로 데이.. 2012. 2. 4.
자바(java) 프로그래밍 ●자바는 대소문자를 구별한다 ●한글이름으로 된 디첵토리를 잘 안될수 있다. 디렉토리명은 될수 있으면 영어로 하는게 좋다 ●main()이 있는 클래스를 실행시켜야 한다. ●main은 항상 'public static void main(String []args){}' 형태이다 ●애플릿으로 작성한 클래스는 항상 'public'이다 ●한 파일에 public 클래스는 최대 1개이다. 1개를 초과하면 컴파일시 에러발생 ●public 으로 선언된 클래스가 있는 경우에 파일 이름은 해당 클래스 이름과 동일해야 한다 ●생성자(constructor)는 리턴타입이 없고 클래스 이름과 같다 ●하나의 java파일에 여러개의 class를 만들 수 있는데 파일명과 같은 이름의 class는 public로 선언한다. 그 외 다른 cla.. 2012. 1. 30.
PHP 문법 간단 정리4 ●쿠키 발생 - 태그 쓰지건에 'setcookie()'함수 호출 ●쿠키 함수 세번째 변수에 유효기간을 설정할수 있다 ●쿠키 삭제 - 유효기간을 과거의 시간으로 설정해서 삭제 setcookie('쿠키명', '쿠키값', time()-60); ●쿠키 받기 - 수퍼 글로벌 변수 '$_COOKIE로 받는다 ex) $getval=$_COOKIE['쿠키명']; ●세션 개시 - 태그 출력전에 'session_start()'함수 호출 ●세션 변수 주고받기 - 수퍼 글로벌 변수'$_SESSION'에 값을 저장하면 동일한 세션에서 값을 공유할수 있다 ex) $_SESSION['세션변수']=세션변수값; //세션변수에는 '$'안 붙인다 ●세션 종료 - 'session_destroy()'함수 호출 ●글로벌(global) 변수 -.. 2012. 1. 27.
PHP 문법 간단 정리3 ●if문 if(조건식) {내용} else {내용} ●if~elseif~else문 if(조건1) {처리1} elseif(조건2) {처리2} elseif(조건3) {처리3} else {처리4} ●for문 for($i=0; 조건식; $i증감) {처리} ●foreach문 - 배열된 요소의 수만큼 처리를 반복 foreach($a as $b) //$b은 취득한 요소를 저장하기 위한 변수 {처리} ex) 결과 a는 1 b는 2 c는 3 d는 4 ●while문 while(조건식) {처리} ●반복문 안의 break와 continue는 주로 반복문안의 조건문에서 쓰인다 break - 반복을 중단 continue - 그 회의 반복만 중단하고 다음회로 이동 ●switch문 switch(식 or 변수) { case 값1: //.. 2012. 1. 27.
PHP 문법 간단 정리2 ●배열 - array()로 설정 ex) $a=array(1, 2, 3, 'a', 'b', 'c'); ●연상배열 - 인덱스를 문자열이나 다른 숫자로 지정할수 있다 ex) $a=array('dog'=>'개', 'cat'=>'고양이'); $a['dog'] $a['cat'] 개 고양이 ●unset()함수 - 배열에서 지정한 요소를 제거 ex) unset($a[1]); //2번째 요소 제거(인덱스는 0부터 시작하기 때문에 1은 두번째이다) unset($a); //배열 전체를 제거 ●array_push()함수 - 배열의 요소를 추가 ex) array_push($a, 1, 2); //배열 '$a' 뒤에 1,2추가 ●레퍼런스(reference) - 변수의 레퍼런스를 만들면 원래의 변수와 레퍼런스를 동등하게 취급,'&.. 2012. 1. 27.
PHP 문법 간단 정리1 ● ".php" 라는 확장자로 php스크립트 파일 작성 ●html 내부에 를 입력하고 이 안에 php코드 입력 ●print 명령어 - 문자열을 표시 ex) 2012. 1. 27.
안드로이드 애플리케이션 개발 환경 구축 1. java SDK 또는 JRE(Java Runtime Enviroment) - 개발툴을 실행하기 위한 Java VM 2. 이클립스(Eclipse) - 개발툴 3. Android SDK - 개발에 필요한 안드로이드 라이브러리 4. Developer Tools(Eclipse Plugin) - 개발에 필요한 이클립스 플러그인 형태의 개발도구 5. 이클립스 설정 1. java SDK 또는 JRE(Java Runtime Enviroment) ① 아래 주소에서 Java SE Development를 다운받아 설치한다 http://www.oracle.com/technetwork/java/javase/downloads/index.html ② 시스템 환경변수에서 "JAVA_HOME"을 설정한다 내컴퓨터->속성->설정변.. 2012. 1. 17.
html 문법, 태그 간단 정리2 -텍스트 -태그 Ordered List, 순서있는 목록 -태그 Unordered List, 순서없는 목록 -태그 Definition List, 용어정의 - -태그 사용자가 입력한 데이터를 웹서버에 전송 -태그 2011. 11. 24.
반응형