Programming 265

C#/ 보충 1(객체, 스레드, 컬렉션스)

# 객체 생성 using System; namespace ConsoleApp1 { public class Univ { private string[] name; private string[] sex; private int[] age; public int[] Age { get { return age; } set { age = value; } } public string[] Sex { get { return sex; } set { sex = value; } } public string[] Name { get { return name; } set { name = value; } } } } *Java랑 비교해 보면, C#은 키워드로 get,set 이 프로퍼티로 사용한다. # 스레드 및 컬렉션스 활용 using S..

Node.js

# Node.js JavaScript를 사용하여 서버 측 애플리케이션을 개발하고 실행할 수 있는 런타임 환경입니다. Node.js는 Chrome V8 JavaScript 엔진을 기반으로 하며, 이를 통해 비동기식 이벤트 처리와 빠른 코드 실행을 지원합니다. 다음은 Node.js의 주요 특징과 개념에 대한 간단한 설명입니다. 1. JavaScript 사용: Node.js는 JavaScript를 사용하여 서버 측 애플리케이션을 작성할 수 있게 해줍니다. 이는 프론트엔드와 백엔드 개발 언어를 통일시켜 개발자가 양쪽에서 동일한 언어를 사용할 수 있게 합니다. 2. 비동기식 프로그래밍: Node.js는 비동기식 이벤트 처리 모델을 사용하며, 이를 통해 동시에 여러 작업을 처리할 수 있습니다. 이러한 특성은 I/O..

스프링(spring)/ 스프링부트(spring boot) 빈 객체 정의

# 스프링부트에서는 기본적으로 WEB-INF폴더 내에, -context.xml, web.xml 파일이 없다. 기존 설정파일에서 추가하던 내용들은 모두 자바 클래스 내에서 설정 가능하다. 그럼 빈 객체 설정은? 컴포넌트 스캔 처리 내의 패키지에서, 해당 객체 클래스 생성. 예를 들어, 스프링 시큐리티 내의 BCryptPasswordEncoder 객체 생성(따로 사용할 경우) package com.boot.main; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.security.crypto.bcrypt.BC..

스프링(spring)/ 스프링부트(spring boot) 배포

# 프로젝트는 스프링부트 JAR빌드 패키지를 사용했다. 프로젝트를 배포하는 몇가지 방법이 있는데; 그 중에서 부분 무료 배포 사이트(Qoddi)를 통해 구현해 본다. 가입 절차 까지는 아래 사이트 참고. https://velog.io/@couchcoding/%ED%8F%AC%ED%8A%B8%ED%8F%B4%EB%A6%AC%EC%98%A4%EC%9A%A9-%EB%AC%B4%EB%A3%8C-%EB%B0%B1%EC%97%94%EB%93%9C-%EC%84%9C%EB%B2%84-%EB%A7%8C%EB%93%A4%EA%B8%B0-Qoddi-Spring-%EB%B0%B0%ED%8F%AC-%EC%98%88%EC%A0%9C#2-%EC%95%B1%EB%A7%8C%EB%93%A4%EA%B8%B0 포트폴리오용 무료 백엔드 서..

스프링(spring)/ 스프링부트(springBoot) JAR 패키징

# 스프링부트 Jar 패키징 그동안 서블릿 컨테이너 설정과 jsp 사용을 위해, War 패키징으로만 사용해왔다. 하지만, 보다 독립적인 실행이 가능하고, 간편한 배포를 위해 Jar 패키징을 사용해 프로젝트 생성. 의존성 패키지로(mysql, mybatis, jdbc, thymeleaf)를 추가 했다. pom.xml 의존성 관리 파일은 기존 spring Boot와 진행이 같고, application.properties 파일에 jsp관련 구문을 빼고는 기존 spring Boot과 진행이 같다. 그 다음, 이제 다른 것이 JAR 패키징에서는 jsp를 사용하지 않는다. 단순히 src/main/resources 폴더의 static, templetes 폴더에 html과 css, js파일을 넣어 사용한다. 나머지 M..

스프링(spring)/ War, Jar(package type)

1. **WAR 파일과 JAR 파일의 차이:** - **WAR (Web Archive):** 주로 웹 애플리케이션을 배포하는데 사용됩니다. 웹 관련 리소스 (JSP 파일, HTML, CSS 등)와 Java 클래스 파일, 라이브러리, 설정 파일 등을 포함합니다. WAR 파일은 서블릿 컨테이너(예: Apache Tomcat)에서 실행됩니다. - **JAR (Java Archive):** Java 클래스 파일, 라이브러리, 리소스 등을 포함하는 일반적인 자바 아카이브 형식입니다. 주로 독립형 애플리케이션을 배포할 때 사용됩니다. JAR 파일은 Java Virtual Machine (JVM)에서 직접 실행할 수 있습니다. 2. **WAR 파일 배포 문제:** 무료 프로그래밍 배포 사이트에서 Spring 프레임워..

딥러닝(deep learning)/ 모델 및 함수 용어 관련

1. **선형 회귀(직선) 및 선형 함수**: 선형 회귀는 입력 변수와 출력 변수 사이의 선형 관계를 모델링하는 회귀 분석 기법입니다. 선형 회귀 모델은 주로 직선으로 표현됩니다. 선형 함수는 입력 변수에 대해 가중치와 편향을 곱하고 더하여 출력을 생성하는 함수로, 선형 회귀 모델에서 사용되는 함수입니다. 2. **로지스틱 회귀(참, 거짓) 및 시그모이드 함수**: 로지스틱 회귀는 이항 분류 문제를 다루기 위한 회귀 분석 기법으로, 주로 확률을 이용해 분류를 수행합니다. 로지스틱 회귀 모델의 출력을 시그모이드 함수에 적용하여 0과 1 사이의 값으로 변환합니다. 시그모이드 함수는 S자 형태를 가지며, 입력을 확률 값으로 변환하는 데 사용됩니다. 3. **이항 분류 모델 및 렐루 함수**: 이항 분류 모델은..

딥러닝(deep learning)/ 사용 라이브러리 관련

# 데이터 과학, 머신 러닝, 딥러닝 등 다양한 분야에서 사용되며, 각각의 특징과 기능을 활용하여 작업을 수행하는 각 라이브러리의 사용 예시 1. **텐서플로우(TensorFlow) 및 케라스(Keras)**: - **텐서플로우**: 딥러닝 프레임워크로, 모델의 생성, 학습, 배포 등 다양한 딥러닝 작업을 지원합니다. - **케라스**: 텐서플로우 위에서 돌아가는 딥러닝 API로, 모델을 구성하고 학습시키기 위한 높은 수준의 추상화를 제공 a. **케라스.모델(Model)**: 케라스의 모델은 딥러닝 모델의 구성과 학습을 관리하는 주요 구성 요소입니다. 모델은 레이어들을 조합하여 구성됩니다. 모델을 생성하고 컴파일한 후에, 데이터로 학습하고 평가하는 등의 작업을 수행할 수 있습니다. 시퀀셜 모델과 함수형..

스프링(spring)/ 다듬기 2(어노테이션에 대한 고찰)

@어노테이션(Anotation) : 자바 프로그래밍 언어에서 메타데이터(metadata)를 표현하는 방법 중 하나. 메타데이터란 코드 자체가 아니라 코드를 해석하고 처리하는 데 도움을 주는 정보를 의미합니다. 어노테이션은 주로 클래스, 메서드, 필드 등의 요소에 부가적인 정보를 제공하거나 처리를 지시하는 데 사용됩니다. 스프링 프레임워크 및 다른 프레임워크에서는 어노테이션을 활용하여 코드의 의미를 확장하고 설정을 간소화하는 등의 목적으로 활용 1. @Controller: - `@Controller` 어노테이션은 Spring MVC에서 컨트롤러 클래스임을 나타내는 데 사용됩니다. - 이 어노테이션을 사용하여 클래스를 스프링 빈으로 등록하면, 해당 클래스는 HTTP 요청을 처리하는 컨트롤러 역할을 할 수 있..