ASP

ASP는 비주얼 베이직을 기본으로 개발된 VBScript ( JavaScript에 대항하여 마이크로소프트사가 비주얼 베이직 언어를 기초로 만든 스크립트 언어이다 ) 를 HTML 문서에 직접 코딩하여 동적인 웹 페이지를 구현하는 기술이다. 

ASP는 HTML 페이지에 VBScript 의 소스를 내장한 프로그램이며, ASP 파일은 일반 텍스트 파일로 확장자는 asp이다.

 

현재의 시간을 출력하는 간단한 ASP 프로그램으로 태그 <% .... %> 사이에 있는 부분이 VBScript 소스이다.

<%@ language="VBScript" %>
<html>
<head>
<title>ASP 예제 프로그램</title>
</head>
<body>
	지금 시각은 <%= now() %> 입니다.
</body>
</html>

 

PHP

PHP는 하이퍼텍스트 전처리기<PHP: Hypertext Preprocessor>를 의미하며, 다양하게 쓰이는 오픈 소스 일반 프로그래밍 언어의 일종이다. PHP의 원래 목적은 웹 개발에서 동적 웹 페이지를 빠르게 개발하기 위해 설계되었다.

웹 개발의 PHP를 구현하기 위해 HTML 소스 문서 안에 PHP로 작성된 코드를 넣어 구현하며, PHP 처리 기능이 있는 웹 서버에서 해당 코드를 인식하여 작성자가 원하는 웹 페이지를 생성하는 방식으로 동적 웹 페이지가 제작된다.

문법은 C, Java, Perl 과 비슷하며 배우기 쉽다. 현재 PHP는 웹 개발자가 동적을 생성되는 웹 페이지를 개발하는 분야에 가장 많이 활용되며, PHP는 명령 줄 인터페이스 방식의 자체 인터프리터를 제공하여 이를 통해 범용 프로그래밍 언어로도 사용될 수 있으며 그래픽 애플리케이션 등 다양한 분야에 사용되고 있다.

 

 

PHP의 장점

PHP의 장점은 초보에게는 매우 쉽고, 전문가에는 많은 고급 기능을 제공한다는 점이다. PHP를 활용하면 매우 쉽게 간단한 스크립트로 웹을 구축할 수 있다. 확장자가 .php인 다음 소스는 웹 브라우저에 "안녕, 나는 PHP 스크립트야!"를 출력하는 PHP 코드로 HTML 태그 내부에서 태그 <%php ... %> 사이에 PHP 코드가 삽입되는 것을 알 수 있다.

 

 

자바스크립트와 구분되는 점

웹 개발에서 PHP가 클라이언트 측 자바스크립트와 구별되는 점은 PHP 소스 코드는 서버에서 실행하여, HTML 을 생성하여 전송된다는 점이다. 서버는 확장자 .php를 인식해 PHP 실행 처리를 하며, 클라이언트는 스크립트 실행 결과만을 받게 된다. 그러므로 클라이언트 측은 PHP 소스 코드를 전혀 볼 수 없다.

 

 

ASP.NET의 정의

ASP.NET은 동적 웹 사이트(웹 응용 프로그램)을 만들기 위한 마이크로소프트의 웹 개발 기술이다. 다른 웹 개발기술인 ASP, PHP, JSP는 웹 스크립트 언어(Web Script Language)라고도 부른다. 하지만, ASP.NET은 웹 스크립트 언어라고 부르지 않는다. 웹 개발 기술이라고 하는 것이 가장 정확하다. 이유는 차후에 설명한다.

 

ASP.NET 버전은 다음과 같이 변화되었다.
ASP.NET 1.0(2000년) → ASP.NET 1.1(2003년) → ASP.NET 2.0 (2005년)

 

ASP.NET은 .NET Framework에서만 동작한다. ASP.NET 1.X는 .NET Framework 1.1에서 ASP.NET 2.0은 .NET Framework 2.0에서 동작한다. 그리고 .NET Framework의 포괄적인 개념은 .NET이다. 따라서 다음과 같은 포함관계가 성립한다.

.NET > .NET Framework > ASP.NET

물론 윈도우 응용프로그램이라면 다음과 같은 포함관계도 성립한다.

.NET > .NET Framework > Windows Programming based C#

 

웹기술은 로그인의 처리에서 처럼, 웹서버에서 내부 사용되는 로직을 개발하고 동작되게 해주는 프로그래밍언어를 뜻한다. ASP.NET, JSP, PHP, ASP, Perl 등을 모두 웹 기술이라고 할 수 있다. 또한 웹 스크립트 언어라고도 부를 수 있다. ASP, JSP, PHP, Perl 등은 그 이름 자체를 스크립트 언어라도고 지칭할 수 있다. 하지만 ASP.NET 은 언어라고 할 수 없는 것이 ASP.NET을 구현할 수 있는 언어가 C#, VB, J#, C++ 등으로 나뉘어지기 때문에 ASP.NET은 웹 개발 기술이라고만 부른다.

 

출처 : 티스토리

https://ts2ree.tistory.com/21

 

ASP, PHP, JSP 가 무엇인지 모르겠는 사람들을 위해

ASP ASP는 비주얼 베이직을 기본으로 개발된 VBScript ( JavaScript에 대항하여 마이크로소프트사가 비주얼 베이직 언어를 기초로 만든 스크립트 언어이다 ) 를 HTML 문서에 직접 코딩하여 동적인 웹 페

ts2ree.tistory.com

https://7day.tistory.com/38

 

ASP.NET 이란?

ASP.NET의 정의 ASP.NET은 동적 웹 사이트(웹 응용 프로그램)을 만들기 위한 마이크로소프트의 웹 개발 기술이다. 다른 웹 개발기술인 ASP, PHP, JSP는 웹 스크립트 언어(Web Script Language)라고도 부른다.

7day.tistory.com

 

'JAVA준비 > 배경지식' 카테고리의 다른 글

엑셀파일을 txt로 여는법+(XML, JSON, CSV)  (0) 2021.07.28
트리구조(레드-블랙 트리)  (0) 2021.07.26
파일 할당 테이블fat  (0) 2021.07.23
MVC모델-뷰-컨트롤러  (0) 2021.07.15
트래픽 사이트)스탯카운터  (0) 2021.07.08

 

저장을 CSV파일로 저장을하면txt파일로 불러올때 깨지지 않는다(xlsx로하면 이상한 글자가 출력된다.)

 

 

  XML JSON CSV
장점 3가지 포멧 중 가장 직관적
메타 정보를 제공해서 정보 표현 이상의 효과를 가져올 수 있다.
모양과 규칙 자체가 단순해서 타언어에서도 구현하기 쉽다. 용량이 가장 작다
csv는 변하지 않는 많은양의 데이터를 제공할때 주로 이용이 가능하다.
단점 실제 전송하는 정보보다 메타 데이터의 크기가 더 커질 수 있다. 콤마가 두락되거나 중괄호가 잘못 닫히는 등 문법 오류에 취약하다 데이터가 많아지면 어떤 데이터가 항목을 나타내는지 가시화가 어렵다.
주요사용처 단순 게임 옵션, 직접 데이터 수정이 잦은 부분에 사용 서버 통신 REST API르 사용할 때 가장 많이 사용 간단한 테이블 작성 또는 읽는 속도가 중요한 부분에서 사용

'JAVA준비 > 배경지식' 카테고리의 다른 글

php jsp asp asp.net(c#)  (0) 2021.07.28
트리구조(레드-블랙 트리)  (0) 2021.07.26
파일 할당 테이블fat  (0) 2021.07.23
MVC모델-뷰-컨트롤러  (0) 2021.07.15
트래픽 사이트)스탯카운터  (0) 2021.07.08

트리 구조 그래프의 일종으로, 여러 노드가 한 노드를 가리킬 수 없는 구조이다. 간단하게는 회로가 없고, 서로 다른 두 노드를 잇는 길이 하나뿐인 그래프를 트리라고 부른다.

트리에서 최상위 노드 : 루트 노드(root node 뿌리 노드[*]) 
노드 A가 노드 B를 가리킬 때 : A를 부모 노드(parent node)
노드 A가 노드 B를 가리킬 때 : B를 자식 노드(child node) 
자식 노드가 없는 노드(최하단 노드) : 리프노드(leaf node) 
잎 노드가 아닌 노드 : 내부 노드(internal node)

 

 

 

 

 

 

 

 

레드-블랙 트리(Red-black tree)

레드-블랙 트리(Red-black tree) 자가 균형 이진 탐색 트리(self-balancing binary search tree)로서, 대표적으로는 연관 배열 등을 구현하는 데 쓰이는 자료구조다. 실 사용에서 효율적이고, 최악의 경우에도 상당히 우수한 실행 시간을 보인다: 트리에 n개의 원소가 있을 때 O(log n)의 시간복잡도로 삽입, 삭제, 검색을 할 수 있다.

 

용도와 장점

레드-블랙 트리는 자료의 삽입과 삭제, 검색에서 최악의 경우에도 일정한 실행 시간을 보장한다(worst-case guarantees). 이는 실시간 처리와 같은 실행시간이 중요한 경우에 유용하게 쓰일 뿐만 아니라, 일정한 실행 시간을 보장하는 또 다른 자료구조를 만드는 데에도 쓸모가 있다. 예를 들면, 각종 기하학 계산에 쓰이는 많은 자료 구조들이 레드-블랙 트리를 기반으로 만들어져 있다.

AVL 트리는 레드-블랙 트리보다 더 엄격하게 균형이 잡혀 있기 때문에, 삽입과 삭제를 할 때 최악의 경우에는 더 많은 회전(rotations)이 필요하다.

레드-블랙 트리는 함수형 프로그래밍에서 특히 유용한데, 함수형 프로그래밍에서 쓰이는 연관 배열이나 집합(set)등을 내부적으로 레드-블랙 트리로 구현해 놓은 경우가 많다. 이런 구현에는 삽입, 삭제시 O(log n)만큼의 시간이 필요하다.

레드-블랙 트리는 2-3-4 트리 등장변환이 가능하다(isometry). 다시 말해서, 모든 2-3-4 트리에는 구성 원소와 그 순서(order)가 같은 레드-블랙 트리가 최소한 하나 이상 존재한다는 말이다. 2-3-4 트리에서의 삽입, 삭제 과정은 레드-블랙 트리에서의 색 전환(color-flipping)과 회전(rotation)과 같은 개념이다. 그러므로 실제로는 잘 쓰이지 않지만 2-3-4 트리는 레드-블랙 트리의 동작 과정(logic)을 이해하는 데 많은 도움을 주기 때문에 많은 알고리즘 교과서들이 레드-블랙 트리가 나오기 바로 전에 2-3-4 트리를 소개하고 있다.

 

특성(Properties)

1. 노드는 레드 혹은 블랙 중의 하나이다.
2. 루트 노드는 블랙이다.
3. 모든 리프 노드들(NIL)은 블랙이다.
4. 레드 노드의 자식노드 양쪽은 언제나 모두 블랙이다. 
(즉, 레드 노드는 연달아 나타날 수 없으며, 블랙 노드만이 레드 노드의 부모 노드가 될 수 있다)
5. 어떤 노드로부터 시작되어 그에 속한 하위 리프 노드에 도달하는 모든 경로에는 리프 노드를 제외하면 
모두 같은 개수의 블랙 노드가 있다.

 

출처 : 위키백과

https://ko.wikipedia.org/wiki/%EB%A0%88%EB%93%9C-%EB%B8%94%EB%9E%99_%ED%8A%B8%EB%A6%AC

 

레드-블랙 트리 - 위키백과, 우리 모두의 백과사전

레드-블랙 트리(Red-black tree)는 자가 균형 이진 탐색 트리(self-balancing binary search tree)로서, 대표적으로는 연관 배열 등을 구현하는 데 쓰이는 자료구조다. 1978년 레오 귀바스(Leo J. Guibas)와 로버트

ko.wikipedia.org

 

 

'JAVA준비 > 배경지식' 카테고리의 다른 글

php jsp asp asp.net(c#)  (0) 2021.07.28
엑셀파일을 txt로 여는법+(XML, JSON, CSV)  (0) 2021.07.28
파일 할당 테이블fat  (0) 2021.07.23
MVC모델-뷰-컨트롤러  (0) 2021.07.15
트래픽 사이트)스탯카운터  (0) 2021.07.08

파일 할당 테이블(영어: File Allocation Table, FAT)은 디지털 카메라 등에 장착되는 대부분의 메모리 카드와 수많은 컴퓨터 시스템에 널리 쓰이는 컴퓨터 파일 시스템 구조(architecture)이다. FAT 파일 시스템은 상대적으로 간단하기 때문에 플로피 디스크, 플래시 메모리 카드, 디지털 카메라 및 다른 수많은 휴대용 기기에서 흔하게 볼 수 있다. FAT의 성능은 다른 대부분의 파일 시스템에 견주어 좋지 않은 평을 받는다. 그 까닭은 운영 시간을 낭비하게 만드는 너무나도 단순한 자료 구조를 이용하고 조그마한 파일이 많이 있으면 디스크 공간을 잘 활용하지 못하기 때문이다.

플로피 디스크의 경우 FAT는 ECMA-107[3]  ISO[4]/IEC 9293[5] 으로 표준화되어 있다. 이러한 표준들은 긴 파일 이름 지원이 포함되지 않은 FAT12와 FAT16만 포함하고 있다.

FAT 파일 시스템은 기술적으로 비교적 잘 문서화되어 있으며 실질적으로 기존의 모든 PC 운영 체제가 이를 지원한다. 그러므로 솔리드 스테이트 메모리 카드를 위한 쓸모있는 포맷으로서 운영 체제 사이의 자료 공유를 위한 편리한 방법이 되었다.

 

FAT32

2기가바이트 이상의 하드디스크를 지원하며, 윈도우 95 OSR2부터 이 파일 시스템을 사용할 수 있다.

FAT32에서는 하나의 파일은 최대 4기가바이트-1바이트의 용량을 가질 수 있다. 하나의 파티션이 최대 8테라바이트의 용량을 가질 수 있고, 최대 268,435,437개의 파일을 담을 수 있다. 윈도우 98, 윈도우 미와 같은 구형 운영 체제나, 리눅스, OS X과 같은 운영 체제에서 윈도우와 호환성이 필요할 때, 또는 디지털카메라, 게임기 등에서도 이용된다. 윈도우 XP 등에 내장된 디스크 관리자 유틸리티에서는 32기가바이트 이상의 하드디스크를 파티션할 때 FAT32를 선택할 수 없고 NTFS만 나오지만, 별도 유틸리티를 이용하거나 다른 운영 체제에서 파티션을 설정하면 문제 없이 사용할 수 있다.

클러스터의 크기가 작아 하드디스크의 낭비를 줄일 수 있다. FAT16보다 효율적으로 하드디스크를 이용한다. 물리적 드라이브의 크기에 따라서 클러스터의 크기를 다르게 설정한다.

FATX

FATX는 FAT 파일 시스템을 수정한 버전이며 마이크로소프트의 엑스박스 게임기 하드 디스크 드라이브와 메모리 카드를 위하여 설계된 것이다. FATX는 아래의 exFAT와 혼동해서는 안 된다.

exFAT

'Extended File Allocation Table'의 약자로 일명 FAT64라고도 한다. 윈도우 XP와 윈도우 서버 2003 (둘다 x86, x64) 사용자들은 마이크로소프트사로부터 업데이트 KB955704를 내려받아 설치하면 exFAT 지원을 사용할 수 있고,[9] 윈도우 비스타의 경우 서비스 팩 1, 윈도우 임베디드 CE 6.0부터 지원한다. FAT32의 한계를 극복하고자 개발되었으며 고용량의 플래시 메모리 미디어를 위한 파일 시스템이다. 여유공간 계산이 빨라졌으며 파일 삭제 또한 빨라졌다. FAT32에서 파일의 최대 크기가 4기가바이트인 반면, exFAT에서는 16엑사바이트가 파일의 최대 크기가 된다.

 

출처 : 위키백과

https://ko.wikipedia.org/wiki/%ED%8C%8C%EC%9D%BC_%ED%95%A0%EB%8B%B9_%ED%85%8C%EC%9D%B4%EB%B8%94

model–view–controller, MVC는 소프트웨어 공학에서 사용되는 소프트웨어 디자인 패턴이다.

 

 

 

모델 뷰 컨트롤러를 사용하는 이유는 유지보수가 쉽기 때문이다.

 

모델은 모델의 상태에 변화가 잇을 때 컨트롤러와 뷰에 이를 통보한다. 모델이 잘못되면 이 소프트웨어 디자인 패턴의 유지보수에 심각한 문제가 생긴다.

어떠한 동작을 수행하는 코드를 의미하며 표시 형식에 의존하지 않는다.

 

는 사용자가 볼 결과물을 생성하기 위해 모델로부터 정보를 얻어온다. 만약 뷰와 모델의 연계가 안된다면, 마찬가지로 유지보수에 문제가 생긴다.

MVC에서 모델은 여러 개의 뷰(view)를 가질 수 있다. 뷰는 모델에게 질의를 하여 모델로 부터 값을 가져와 사용자에게 보여준다.

 

컨트롤러 모델에 명령을 보냄으로써 모델의 상태를 변경할 수 있다. 프로그래머가 주로 다루게 되며, 컨트롤러가 관련된 뷰에 명령을 보냄으로써 모델의 표시 방법을 바꿀 수 있다.

MVC의 뷰는 여러 개의 컨트롤러(controller)를 가지고 있다. 사용자는 컨트롤러를 사용하여 모델의 상태를 바꾼다. 컨트롤러는 모델의 mutator 함수를 호출하여 상태를 바꾼다. 이때 모델의 상태가 바뀌면 모델은 등록된 뷰에 자신의 상태가 바뀌었다는 것을 알리고 뷰는 거기에 맞게 사용자에게 모델의 상태를 보여 준다.

 

참고 자료 위키백과:https://ko.wikipedia.org/wiki/%EB%AA%A8%EB%8D%B8-%EB%B7%B0-%EC%BB%A8%ED%8A%B8%EB%A1%A4%EB%9F%AC

 

모델-뷰-컨트롤러 - 위키백과, 우리 모두의 백과사전

모델, 뷰, 컨트롤러의 관계를 묘사하는 간단한 다이어그램. 웹 애플리케이션에서 일반적인 MVC 구성요소 다이어그램 모델-뷰-컨트롤러(model–view–controller, MVC)는 소프트웨어 공학에서 사용되는

ko.wikipedia.org

 

'JAVA준비 > 배경지식' 카테고리의 다른 글

트리구조(레드-블랙 트리)  (0) 2021.07.26
파일 할당 테이블fat  (0) 2021.07.23
트래픽 사이트)스탯카운터  (0) 2021.07.08
JAVA이클립스 기본적인 창 보는 법  (0) 2021.07.08
JAVA시작  (0) 2021.07.07

https://gs.statcounter.com/

 

StatCounter Global Stats - Browser, OS, Search Engine including Mobile Usage Share

Tracks the Usage Share of Search Engines, Browsers and Operating Systems including Mobile from over 10 billion monthly page views.

gs.statcounter.com

 

 

2020-2021년 7월 현재까지는 크롬이 제일 많이 사용되는 것을 볼 수 있다 이 외에도 Edit Chart Data로 원하는 트래픽을 볼 수 있다.

 

 

'JAVA준비 > 배경지식' 카테고리의 다른 글

트리구조(레드-블랙 트리)  (0) 2021.07.26
파일 할당 테이블fat  (0) 2021.07.23
MVC모델-뷰-컨트롤러  (0) 2021.07.15
JAVA이클립스 기본적인 창 보는 법  (0) 2021.07.08
JAVA시작  (0) 2021.07.07

Project Explorer

이클립스 왼쪽에 보면 Project Explorer창이 있는데, 맨 위에 프로젝트-패키지-Class로 구성되어 있다.

그리고 이전 글에서 JDK를 깔았으면 JRE Library에 여러가지 명령어를 사용할 수 있게 해 주는 Library가 있을 것이다.

만약 프로그램 설정이 안돼어 있다면 https://codeahn.tistory.com/4 여기서 설정하는방법을 보면 도움이 될 것이다.

 

class

여기서 코딩을 할 수 있다. 코딩을 하기 위해선 Project Explorer에서 class 파일을 실행시켜주면 위에 

#ClassName. java같이 불러와지고 여러 개를 불러올 수 있다.

 

Console

프로그램을 실행하면 결과값을 볼 수 있는 창이다.

오른쪽 위에 콘솔을 지우거나 Scroll lock 등 다양한 기능이 있다.

만약 코드를 크게보기위해 Project Explorer을 끄거나 하면 여기서 빠르게 화면 전환을 할 수 있다.

 

만일, 파일의 물리적 구조를 보고싶다면 

window > showview > other > General > navigator를 실행시키면 Navigator가 떠서 물리적 구조를 볼 수 있다.

Navigator

또한 컴파일 갯수와 class file의 수는 달라질 수 있다. 컴파일 개수는 public(접근 제어자) 수를 따라가고, class file의 개수는 class 개수를 따라간다.

 

이 부분에관해서는 추후에 다시 다룰 것이다.

이로써 자바를 배우기 위해 기본적인 창들을 보는 방법을 알아보았다. 

 

'JAVA준비 > 배경지식' 카테고리의 다른 글

트리구조(레드-블랙 트리)  (0) 2021.07.26
파일 할당 테이블fat  (0) 2021.07.23
MVC모델-뷰-컨트롤러  (0) 2021.07.15
트래픽 사이트)스탯카운터  (0) 2021.07.08
JAVA시작  (0) 2021.07.07

휴먼교육센터에서 코딩을 받기시작했다

상반기에 HTML CSS JavScript,SQL(ORACLE llg) >> Databas

하반기에 Servlet/JSP,Spring FrameWork를 배울 것이다.

'JAVA준비 > 배경지식' 카테고리의 다른 글

트리구조(레드-블랙 트리)  (0) 2021.07.26
파일 할당 테이블fat  (0) 2021.07.23
MVC모델-뷰-컨트롤러  (0) 2021.07.15
트래픽 사이트)스탯카운터  (0) 2021.07.08
JAVA이클립스 기본적인 창 보는 법  (0) 2021.07.08

+ Recent posts