Programming Language
Mac 사용자를 위한 C#으로 개발할 때 좋은 도구
Mac 사용자를 위한 C#으로 개발할 때 좋은 도구
2022.12.13C#으로 개발할 때 좋은 도구를 추천해보고자 합니다. Mac 사용자 기준으로 작성된 글입니다. 가장 유명한 통합 개발 환경(IDE) 가장 유명한 것은 Visual Studio, Rider입니다. 모두 유용한 기능이 많고 아주 훌륭하고 편리한 도구입니다. Windows 환경이시라면 큰 고민 없이 마음에 드는 IDE를 시작하셔도 무방합니다. 실리콘 Mac에서는 Visual Studio가 성능이 별로고 Mac 환경에 딱히 친화적이지 않아서 JetBrains에서 만든 Rider를 그냥 쓰라고 추천받고는 했는데요. Mac용 Visual Studio 2022부터는 많은 것이 개선되었습니다. Visual Studio 특유의 환경과 IntelliSence를 좋아한다면 새로 나온 Visual Studio for Mac ..
발전한 자바스크립트와 현재 jQuery의 위치
발전한 자바스크립트와 현재 jQuery의 위치
2021.07.10이틀 전에 '제이쿼리는 왜 FD 로드맵에서 삭제 되었을까?'라는 글을 재밌게 읽었습니다. 문득 jQuery의 흔적을 자주 볼 수 있는 인트라넷에 이 글과 제가 개발 공부를 하면서 느낀 JavaScript와 jQuery에 관해서 쓰면 좋을 거 같아서 남겨봅니다. 주의 부족한 경험과 기억에 의존해서 적는 글이라 틀린 부분이 있을 수 있습니다. 오류나 틀린 부분이 있다면 지적 부탁드립니다! jQuery가 개발되기 전의 웹 초창기(1995~1996) 웹 브라우저 jQuery가 개발되기 전의 JavaScript는 브라우저 제조사 별로 표준이 달라서 같은 JavaScript 코드라도 어떤 브라우저에서는 동작하지만 어떤 브라우저에서는 안 돌아가는 경우가 많았습니다. 그래서 개발자에게 JavaScript는 손이 여러모..
[파이썬] Thread를 사용하기 전에 알아야 할 몇 가지 주의점들
[파이썬] Thread를 사용하기 전에 알아야 할 몇 가지 주의점들
2020.05.23Thread를 사용하는 이유와 발생할 수 있는 문제들 Python은 하나의 Thread(Main Thread)로 시작한다. Main Thread는 혼자서 순차적으로 코드를 실행하게 된다. 하지만 실행되던 중간에 Blocking Function, 예를 들어서, Input과 같은 함수를 만나면 그 함수의 실행이 끝날 때까지 기다리게 된다. Main Thread가 멈추게 되면 다른 함수를 실행할 수가 없게 되는데 이때 우리는 Thread를 하나 더 만들어서 다른 함수를 병렬적으로 Blocking Function과 같은 함수와 함께 실행할 수 있다. 하지만 Thread를 여러 개를 사용할 때 주의해야 할 것들이 많다. 이번 글에서는 Thread를 사용할 때 주의해야 할 점과 생각해야 할 문제들을 소개해 보고자 ..
[C# 8.0] Nullable Reference Type이란?
[C# 8.0] Nullable Reference Type이란?
2020.02.29C# 8.0의 새로운 기능들 중 하나로 Nullable Reference Type(널 참조 형식)이 있다. https://docs.microsoft.com/ko-kr/dotnet/csharp/whats-new/csharp-8#nullable-reference-types C# 8.0의 새로운 기능 - C# 가이드 C# 8.0의 새로운 기능을 살펴봅니다. docs.microsoft.com 이미 클래스와 같은 Reference Type은 null을 가질 수 있는데 굳이 Nullable 필요할까?라는 의문이 들어서 찾아봤다. Nullable Reference Type에 대해서 알아보자 1. Nullable Reference Type을 선언하려면 Nullable Value Type과 같이 Class명 우측에 물음..
[C#] Nullable (Value Type)
[C#] Nullable (Value Type)
2020.02.26Nullable이란? Nullable Value Type은 널 값을 가질 수 없는 Value/자료형을 Null 값을 허용해주는 게 하는 새로운 타입이다. 예를 들어서, Bool은 True 또는 False만 가질 수 있지만 Nullable을 쓰면 True, False, Null까지 가지게 해 준다. Nullable 선언하기 Nullable Type은 값 형식(T)에 물음표(?)를 붙이면 된다. T? 의 예시 bool? isOlder = null; int? myAge = 12; Nullable Type은 제네릭인 System.Nullable 구조체의 인스턴스여서 Nullable로도 선언할 수 있다. Nullable의 예시 Nullable isOlder = null; Nullable myAge; 대표 이미지 ..
[Julia] 줄리아 입문하기 4 :: 표준 모듈(Standard Module)에 대한 이해
[Julia] 줄리아 입문하기 4 :: 표준 모듈(Standard Module)에 대한 이해
2019.09.09Julia에게는 3개의 중요한 Standard Module이 있습니다. Standard Modules Main: Julia를 실행했을 때, 상위-계층(top-level)이 되는 모듈, 현재 작업 중이게 되는 모듈 Core: 언어에 내장된 모든 기능이 포함된 모듈 Base: 대부분의 상황에서 유용한 기능들이 포함된 모듈 이번 포스트에서는 위의 표준 모듈에 대해 설명하겠습니다. Main Module C언어의 main함수처럼 줄리아를 실행했을 때 가장 기본으로 사용하게 되는 작업 공간은 Main Module입니다. Core Module Core Module은 말 그대로 Core입니다. 이 언어에 내장된 모든 식별자들을 담고 있습니다. 이 모듈이 없으면 아무것도 못하기 때문에 모든 모듈은 암시적으로 using ..
[Julia] 줄리아 입문하기 3 :: 모듈(Module)에 대한 이해
[Julia] 줄리아 입문하기 3 :: 모듈(Module)에 대한 이해
2019.09.04Julia의 Module이란? 관련된 함수들과 (변수와 같은) 정의들의 그룹을 저장하는 곳 분리된 작업 공간 == 새로운 전역 변수의 공간 == 다른 사람들이랑 작업할 때, 이름 충돌을 걱정할 필요가 없다 다른 모듈의 특정 식별자(함수명 or 변수명)만 노출할지 정할 수 있다. (== Importing 하는 것) module ThisIsNewModule ...여기 안에 줄리아 코드를 작성... end Module을 사용하는 방법 앞의 포스트([Julia] 줄리아 입문하기 2)에서, 현재 세션에서 Module에 있는 함수를 사용하기 위해서는 Julia에게 해당 Module을 사용하겠다고 전달을 해야 한다고 했습니다. Module을 사용한다고 하는 것은 Module을 Load 한다고 합니다. Module을 ..
[Julia] 줄리아 입문하기 2 :: 줄리아 파일의 종류, 패키지 매니저, 모듈 사용하기
[Julia] 줄리아 입문하기 2 :: 줄리아 파일의 종류, 패키지 매니저, 모듈 사용하기
2019.09.03먼저, Julia에서 쓰는 파일들에 대해서 알아봅시다. Julia의 Code는 File, Module, Package로 관리됩니다. Julia File: 줄리아 소스코드가 저장되는 Julia File은 .jl 확장자를 씁니다. Module: 관련된 함수들과 변수들을 모아놓은 분리된 작업 공간입니다. Package Manager Package Manager는 무엇인가요? 먼저 줄리아에 공식적으로 등록된 Package들은 https://pkg.julialang.org에서 확인할 수 있습니다. 줄리아는 이러한 패키지들을 Package Manager를 통해서 아주 쉽게 가져오고 삭제할 수 있습니다! (물론 패키지 매니저 말고 수동으로 가져올 수도 있습니다) Julia Package Manager를 사용해보면 정..
[Julia] 줄리아 입문하기 1 :: 줄리아 설치 및 실행
[Julia] 줄리아 입문하기 1 :: 줄리아 설치 및 실행
2019.08.21Window에서 줄리아를 시작해봅시다! 먼저 줄리아를 어떤 환경에서 할지 선택해볼까요? 줄리아는 아래의 방법들 중 자기가 편한 방법을 선택해서 사용하면 됩니다. Julia Box Julia Pro Julia Shell or REPL(Read Evaluate Print Loop) Juno (Julia사용자에게 가장 인기가 많은 IDE) Vim, Visual Code, ... 그 외 방법 1. Julia Box Julia Box 링크: https://www.juliabox.com/ Julia Box를 사용하면 Cloud 환경에서 Julia를 사용할 수 있습니다. 주피터 노트북 인터페이스도 제공해주고 패키지들도 지원을 해줘서 여러 가지로 편할 것 같습니다. 하지만 역시 Cloud 환경에서 실행하는 것이라서 느..
[Julia] 줄리아 소개와 특징 :: 빠르고 배우기 쉬운 프로그래밍 언어
[Julia] 줄리아 소개와 특징 :: 빠르고 배우기 쉬운 프로그래밍 언어
2019.08.20Introduction to JuliaC / C++ / Fortran매우 빠르다(good performance), Compute-Intensive한 task에 좋은 언어이다, 오픈소스 컴파일러가 있다, 배우기 어렵다Python / R느리다(bad performance), 오픈소스, 배우기 쉽다Matlab상대적으로 빠르다, 비싸다, 배우기 쉽다Julia빠르다, 오픈소스, 배우기 쉽다줄리아는 파이썬처럼 문법이 간결해서 배우기 쉬우면서도 성능이 좋은 언어이다. 계산을 위한 여러 가지 배려도 볼 수 있었다. 고성능 컴퓨팅(High Performance Computing, HPC)에 포트란이 많이 쓰이는데 요즘 포트란을 배울 수 있는 곳이 별로 없기도 하고 문법도 쉽지 않다. 이러한 상황에서, 쉽게 배우고 사용할..
[파이썬] 리스트 변형 :: 리스트를 원하는 형태로 바꾸기, 리스트 형변환
[파이썬] 리스트 변형 :: 리스트를 원하는 형태로 바꾸기, 리스트 형변환
2019.08.15어떤 리스트를 원하는 형태로 변형하기 파이썬은 list 안의 모든 원소를 내가 원하는 형태로 변형하기 쉽다. 나는 문자열 list를 int형 리스트로 변환할 때 많이 사용한다. 특히, 백준 문제를 풀 때 input함수나 readline함수를 사용하여 숫자를 입력 받았을 때 많이 사용한다. 그 외에도 기존 list의 원소들을 모두 제곱할 때나 원하는 형태로 바꾸고 싶을 때 유용하다!! 방법 1: map 함수 사용하기 첫 번째 방법은 map내장 함수를 사용하는 것이다. map함수는 저번에 작성한 글([파이썬] 리스트 필터링)에서 설명한 filter함수의 사용법과 비슷하다. map함수는 한 원소에 대해 원하는 대로 변형한 것을 반환하는 함수와 변형할 대상인 list가 필요하다. map함수는 다음과 같이 사용하..
[파이썬] 리스트 필터링 :: 리스트에서 원하는 요소만 추출하기
[파이썬] 리스트 필터링 :: 리스트에서 원하는 요소만 추출하기
2019.08.10어떤 리스트에서 원하는 요소만 추출하기(필터링하기) 파이썬은 list에서 아주 쉽게 원하는 요소만 추출해서 새로운 list를 만들 수 있다. 방법 1: filter 함수 사용하기 첫 번째 방법은 filter내장 함수를 사용하는 것이다. filter함수를 사용하기 위해서는 bool을 반환하는 함수와 추출할 대상인 list(또는 Iterable)가 필요하다. filter함수는 다음과 같이 사용하면 된다. 예를 들어서, 내가 originalList = [1, 2, 44, 52, 61, 7, 28, 92, 10] 위와 같은 list에서 5보다 큰 수만 뽑아내고 싶다고 해보자. 먼저, 5보다 크면 True를 반환하는 함수를 만든다. def isBiggerThanFive(x): return x>5 다음, isBig..