전체 글 (39) 썸네일형 리스트형 C언어 초급) 02.변수 : 02. 입출력 들어가며... 변수의 타입에 대해서 세부적인 설명을 하기 전에 본인이 개발한 내용을 확인하기 위해서는 크게 두가지 방법이 있는데 첫번째는 로그를 출력하는 것이고 두번째는 디버깅툴을 사용하는 것입니다. 디버깅툴을 사용하는 것은 자신이 사용하고 있는 IDE 툴에 따라 다르기 때문에 이번 포스팅에서는 C언어에서 로그를 출력하는 방법과 추가로 사용자 입력을 받는 방법에 대해서 간략하게 알아보도록 하겠습니다. 실제 C 프로그램에서는 사용자의 입력을 받을 일이 거의 없기 때문에 입력은 "scanf()"라는 함수에 대해 간략하게 알아보고 출력의 경우는 디버깅을 위해서도 사용하지만 운영중인 프로그램의 오류 및 원인파악을 위해 별도의 로그유틸을 만들어서 사용할 정도로 빈번하게 사용하기 때문에 "printf()" 함수에 .. C언어 초급) 02.변수 : 01. 변수의 정의 들어가며... 개인적으로 프로그래밍 언어를 처음 접할 때 반드시 살펴보는 부분이 있는데 바로 변수의 종류(타입)와 크기입니다. 물론 프로그래밍 언어마다 표현하는 문법이 비슷하기도 하고 매우 낯선 경우도 많아 개발 및 공부를 하면서 어쩔 수 없이 학습하고 익숙해져야 하는 부분이지만 변수는 대부분 비슷한 듯 차이점이 있어 중요하게 생각하는 부분 중 하나입니다. 개발 초심자들이 많이 하는 실수중에 하나가 변수의 특성과 크기를 고려하지 않고 사용하거나 변수를 선언하고 초기화를 하지 않아 예상치 못한 결과를 도출하기도 합니다. 이번장에서는 이러한 변수에 대해서 살펴보도록 하겠습니다. ✳︎ 생각해보기 변수의 종류와 크기는 스크립트 언어를 제외한 대부분의 언어에서 비슷하게 사용됩니다. 따라서 C언어의 변수에 대해 잘.. C언어 초급) 01.들어가며 : 04. 프로그램의 구조 들어가며... 모든 언어가 마찬가지이겠지만 특정 어플리케이션 (라이브러리, 프로그램, 모듈 등)을 개발하기 전에 어떻게 개발을 진행할 것인지 설계를 하게 됩니다. 개발을 좋아하는 저같은 경우에도 이 설계단계가 매우 중요함을 알면서도 개발보다는 상대적으로 지루하고 귀찮은 작업이라 등한 시 하게 되거나 우선 기능 구현 후 추후에 프로그램 구조를 잡아가는 과정을 거칠 때도 있습니다. 이는 매우 안좋은 습관입니다. 로직의 변경은 해당 함수나 (또는 클래스) 특정 부분만을 수정하면 그만이지만 프로그램의 구조를 바꾸게 되면 소스 전반에 걸친 수정 작업이 이루어지기 때문에 수정 후 모든 기능을 다시 테스트 해야 하는 일이 발생할 수도 있습니다. 이번 글에서는 설계라는 큰 범위의 얘기까지는 아니지만 C언어로 개발을 할.. 맥(Mac) 상단바 미니캘린더 itsycal 설치 들어가며... 맥(Mac)을 사용하다 보면 가끔 오늘 날짜를 확인하고 싶을 때가 있습니다. 물론 몇번 클릭 또는 핸드폰을 보면 되겠지만 귀찮은 본인은 맥컴퓨터 상단바에 시간을 보듯 날짜도 보고 싶습니다. 이를 위한 어플리케이션 (또는 맥 기본기능에 설정도 가능할 듯 하지만)이 많을 것이나 이중 본인이 사용하는 "itsycal"이라는 어플리케이션을 소개할까 합니다. Table of Contents itsycal 설치 설정 및 기능 정리 itsycal 설치 설치는 간단합니다. 아래의 공식사이트로 들어가서 본인이 사용하는 컴퓨터(맥 전용입니다.) 사양에 맞는 어플리케이션을 다운로드 받은 후 zip압축을 풀면 바로 "itsycal.app" 이 생기며 이를 응용프로그램 폴더로 이동시키면 끝입니다. ● 설치하기 h.. [Spring Security][회원가입 및 로그인 예제 9/9] 마무리 들어가며... 마지막으로 설정 부분 및 초기 SQL 관련 부분의 내용을 끝으로 해당 프로젝트의 전체 글을 마무리 하고자 합니다. Table of Contents application.yml, data.sql application.yml, data.sql ● application.yml 어플리케이션의 설정 부분입니다. 경로는 "src/main/resources"에 있으며 초기에는 "application.properties"로 되어 있었을 것입니다. 무엇을 사용하여도 무방하나 전 yaml 포맷을 선호하여 파일명을 변경하였습니다. 아래는 전체 설정 내요입니다. # ================================================================== # Data Source #.. [Spring Security][회원가입 및 로그인 예제 8/9] View 구현 들어가며... 앞 글에서 Controller까지 구현하였으므로 설정 부분을 제외하고 Back End 부분은 끝난 상태입니다. 이번 글에서는 Front End 코드만 대략 살펴볼 것입니다. 사용된 기술은 Thymeleaf, Bootstrap 정도입니다. Bootstrap에 대한 설명은 홈페이지의 도큐먼트가 워낙 잘 나와 있으니 아래 링크를 참조하시면 될 듯 합니다. https://getbootstrap.com/docs/4.4/getting-started/introduction/ Introduction Get started with Bootstrap, the world’s most popular framework for building responsive, mobile-first sites, with Boo.. [Spring Security][회원가입 및 로그인 예제 7/9] Controller 구현 들어가며... 이번 글에서는 Controller쪽 코드를 살펴보도록 하겠습니다. 샘플 화면이다 보니 회원가입 부분을 빼고는 대부분 요청 파일 패스와 실제 html파일을 연결하는 정도가 전부이며 HTTP error가 발생했을 경우 Browser에 기본 탑재된 에러 UI가 아닌 customizing하는 방법에 대해서도 알아보도록 하겠습니다. Table of Contents Controller 구현 ErrorController 구현 Controller 구현 ● MemberController.java package com.demo.security.controller; import javax.annotation.Resource; import javax.validation.Valid; import org.slf4j.. [Spring Security][회원가입 및 로그인 예제 6/9] AuthenticationSuccessHandler & AuthenticationFailureHandler 구현 들어가며... 로그인 성공 또는 실패 시 상황에 맞게 좀 더 세부적으로 수행해야 할 작업들이 있을 수 있습니다. 예를 들면 로그인 실패 시 실패 원인을 UI에 전달하여 화면에 보여주고 싶을 수도 있고 로그인이 일정한 회수 이상 실패할 경우 계정잠금을 해야 할 경우도 있을 수 있습니다. 반대로 로그인 성공 시에는 앞서 저장한 로그인 실패 회수를 초기화하거나 인증권한에 따라 서로 다른 페이지를 보여주고 싶을 수도 있습니다. 앞서 포스팅한 WebSecurityConfigurerAdapter에서도 로그인 성공 시 또는 실패 시 보여줄 파일 패스를 설정할 수도 있으나 위에서 언급한 좀 더 세부적인 작업을 하고자 할 경우에는 Spring Security에서 마련해논 AuthenticationSuccessHandle.. 이전 1 2 3 4 5 다음