본문 바로가기

프로그래밍15

코딩할 때, !이거는 무슨 의미였지? 코딩할 때, ! 이거는 무슨 의미였지? 코딩 처음할 때 !가 붙는 변수를 본적이 있어 꽤나 혼란합니다. !은 무엇이고, ?는 또 뭐지? 헷갈린적이 있어서 간단히 정리하고자 합니다. 간단히 정의하자면 ?는 null의 값의 유무를 정하는 연산자로, null값이 있는지 없는지를 검사해주는 일을 합니다. !는 반대로 단언하는 연산자로 해당 값은 null값을 가지고 있지 않다고 정의합니다. 예시코드)) 1 2 3 String? nullableString; String unNullableString = nullableString!; Colored by Color Scripter cs 위의 코드에서 nullableString 변수는 null을 가질 수 있지만, nonNullableString 변수는 null을 가질 .. 2023. 7. 4.
소프트웨어 이해하기 소프트웨어 이해하기 플랫폼(platform) = 프로그램이 실행되는 하드웨어, 소프트웨어 환경 애플리케이션의 플랫폼 = 운영체제 프로그램을 구현할때 각 플랫폼에 맞게 프로그램을 만들어야 한다. 종류가 안 맞으면 실행이 안된다. 플랫폼의 종류에 맞게 제작해야 한다. 모바일 애플리케이션 - 종류와 환경에 따라 개발하고 유지보수하고 수정 후 배포도 새로 해야한다. 하드웨어와 운영체제에 따라서 앱을 제작해야 한다. 위 현상을 플랫폼 파편화라고 한다. 해결책은 표준! 하드웨어 회사에서 하나의 표준을 삼아 서로 약속을 만들어 제작하면 따로 테스트할 필요없이 받아들일 수 있고 파편화 현상도 개선된다. 이 점을 이용해 애플리케이션의 고충도 덜 수 있게 된다. 애플리케이션의 파편화를 해결하기 위한 해결책은 가상의 컴퓨터.. 2023. 6. 12.
프로그래밍 기본기 프로그래밍의 기본기 프로그래밍의 다양한 분야 탐구 프로그래밍 기본기 - 객체 지향 프로그래밍, 알고리즘, 자료구조 - 기본기가 가장 중요하며 잘 갖추어진다면 새로운 지식을 익힐때 쉽게 익히기 쉽다. 소프트웨어 공학(=소프트웨어로 제품/서비스를 만드는 방법) - 기획(기획자가 필요한 것을 문서로 작성)-개발(문서를 받아 프로그램을 제작)-테스트(프로그램이 잘 작동되는지 확인)-배포(프로그램을 사용자가 사용할 수 있도록 공개)-유지/보수(오류 개선 및 추가적인 기능 개발) 프로세스 관리 - 폭포수(waterfall)-각 단계를 한번에 완벽하게 끝내기 힘들수 있음, 애자일(agile)-결과물을 만들어 미리 확인하고 수정하며 진행. 쪼개서 각각 만들어서 테스트해보는 것. 중간중간 사용하면서 발전시키기 때문에 기.. 2023. 6. 11.