728x90
반응형

전체 글 151

IT도서 : 비전공자를 위한 이해할 수 있는 IT 지식

안녕하세용🎈 IT도서 비전공자를 위한 이해할 수 있는 IT지식 에 대해 포스팅을 해보려고 합니다. 평소에 읽고 싶었던 책이였는데 회사에서의 교육과정으로 있길래 신청해서 읽어보았어요 :) 저는 전공자이지만 항상 전공자라는 믿음이 없어서.. 한번 읽어보고 싶었던 책이예용 📯 저는 제가 알고있는 개념들을 정리하는 느낌으로 읽고 정리해보았습니당! 비전공자를 위한 이해할 수 있는 IT 지식 - IT 시대의 필수 교양서 -우리는 매일 스마트폰으로 메시지를 보내고, 컴퓨터로 일을 합니다. 또 음식점에서 키오스크로 주문하고, 가상현실에서 게임을 즐깁니다. IT는 더 이상 전문가들만의 이 ridibooks.com 목차 • 프롤로그 • 1장 오리엔테이션 • 2장 프로그래밍 언어 & 운영체제(OS) • 3장 네트워크, 클라..

📖 책 도서 2022.02.27

[Kotlin/코틀린] 5 - 상속과 클래스 종류 (data 클래스, object 클래스, companion 클래스)

🚨 코틀린(Kotlin) 클래스의 상속과 생성자 - 코틀린(Kotlin) 의 클래스는 기본적으로 다른 클래스가 상속할 수 없다 - 다른 클래스에서 상속할 수 있게 선언하려면 open 키워드를 사용해야한다 - 상위클래스를 상속받은 하위 클래스의 생성자에서는 상위 클래스의 생성자를 호출해야 한다 open class Super1 {} //Sub1 의 상위클래스 Super1 class Sub1: Super1() {} //클래스의 매개변수가 없는 생성자 호출 open class Super2(name:String) {} //Sub2,Sub3 의 상위클래스 Super2 //상위클래스를 상속받은 하위 클래스의 생성자에서는 상위 클래스의 생성자를 호출해야 한다 class Sub2(name: String): Super2(..

[Kotlin/코틀린] 4 - 널(null) 안전성

🚨 널(null) 안전성 널 안전성 - 널(null) : 객체가 선언되었지만 초기화되지 않은 상태 - 객체는 데이터가 지장된 주소를 참조하므로 흔히 참조 변수라고 한다 데이터가 메모리에 저장되는 위치를 식별하는 값을 주소라고 한다 객체는 주소가 저장되며 이 주소로 메모리에 접근해서 데이터를 이용한다 - 널(null) 은 객체가 주소를 가지지 못한 상태 - 널(null) 인 상태의 객체를 이용하면 널 포인트 예외(NullPointException) 발생 -> 널(null) 인 상태의 객체를 이용할 수 없다는 오류 - 널 안정성 이란 널 포인트 예외(NullPointException) 가 발생하지 않도록 코드를 작성하는 것 널 허용 - ? 연산자 - kotlin 변수 타입을 널 허용(nullable) / 널..

[Kotlin/코틀린] 3 - 클래스와 생성자

🚨 클래스와 생성자 class 클래스 선언 class User { ... } - 클래스의 본문 내용이 없으면 {} 생략가능 - 생성자는 constructor 라는 키워드로 선언하는 함수 - 클래스 안에 다른 클래스 선언 가능 - 클래스의 멤버는 생성자, 변수, 함수, 클래스로 구성 - 클래스는 객체를 생성해 사용하며 객체로 클래스의 멤버에 접근한다 - 코틀린(Kotlin)에서는 객체를 생성할 때 new 키워드를 사용하지 않고, 클래스 이름과 같은 함수로 객체 생성 class User { var name = "eun" //변수 constructor(name: String) { //생성자 this.name = name } fun someFun() { //함수 println("name : $name") } c..

[Kotlin/코틀린] 2 - 조건문과 반복문

🚨 조건문 if 문 (if~ else~) val a: Int = 3 val b: Int = 4 var data1: Int if(a > b) { data1 = a } else { data1 = b } println("data1 : $data1") // => data1 : 4 val data2 = if(a > b) { a } else { b } println("data2 : $data2") // => data2 : 4 val data3 = if(a > b) a else b println("data3 : $data3") // => data3 : 4 when 문 - 코틀린(Kotlin)는 switch 문이 없는 대신 when 문이 존재한다 var data1: Any = 5 when(data1) { is Stri..

[Kotlin/코틀린] 1 - 변수/상수, 데이터타입, 함수, 컬렉션 타입

🚨 변수 / 상수 변수(var) - 초기값이 할당된 후에도 값을 바꿀 수 있는 변수 var [변수명]: [데이터 타입] = [값] 의 형태 상수(val) - 초깃값이 할당되면 바꿀 수 없는 변수 val [변수명]: [데이터 타입] = [값] 의 형태 값에 따라 데이터 타입을 유추할 수 있을 때는 데이터 타입을 생략할 수 있다. /* 변수 - 초기값이 할당된 후에도 값을 바꿀 수 있는 변수 */ var a: Int = 1 a = 10 var b = 3.14 b = 2.10 var c: String = "c문자" c = "c문자 입니다." /* 상수 - 초깃값이 할당되면 바꿀 수 없는 변수 */ val d: Int = 1 val e: Double = 3.14 val f: String = "f문자" 초깃값 할..

[안드로이드/Android] javax.xml.bind.UnmarshalException 에러

안녕하세요 😈 제가 Android Studio 에서 최근에 마주하게 되었던 에러가 있는데요. 새로운 프로젝트를 세팅하는 과정에서 javax.xml.bind.UnmarshalException 에러가 발생했습니다. Exception while handling step android.databinding.annotationprocessor.ProcessExpressions@709068de javax.xml.bind.UnmarshalException 와 같은 에러 메세지가 표시되었답니다. 구글링 결과 Mac 에서 Android Studio 로 빌드를 진행했던 프로젝트 소스를 Window 에서 실행했을 때 발생하는 databinding 의 인코딩 문제 라는 것을 확인하게 되었는데요, 저 또한 Mac 에서 작업된 ..

[안드로이드/Android] Kotlin/Java 권한 요청 uses-permission

안녕하세요! 안드로이드에서 위치나 카메라, 저장공간 등 앱 외부에 있는 리소스에 접근하기 위해서는 Android 6.0 마시멜로(API 23) 이상의 휴대폰인 경우 사용자에게 접근 허용을 위한 권한 요청을 해야합니다. 권한(permission) 요청을 하는 코드를 작성해 보았어요 🤗 AndroidManifest.xml 와 activity_permission.xml 는 동일하고 Activity 코드를 Kotlin, Java 두가지 버전을 준비했답니다! 작성한 파일 목록 입니다. 1. AndroidManifest.xml 2. activity_permission.xml 3. PermissionActivity.kt / PermissionJavaActivity.java 1. AndroidManifest.xml 카..

[iOS/Swift] XCode 로 새로운 Swift 프로젝트 생성

iOS 개발툴인 XCode 로 새로운 iOS 프로젝트를 생성해보겠습니다~ (저는 Xcode Version 12.5 를 사용하였습니다.) XCode 실행합니다. Create a new Xcode project 클릭하거나 상단 메뉴바의 File > New > Project... 를 클릭합니다. Choose a template for your new project 화면에서 App 선택 후 Next 버튼 클릭 생성할 프로젝트의 기본정보 를 설정하여 Next 버튼 클릭 Product Name : 프로젝트 이름 (영어, 숫자로 구성) Organization Identifier : 조직의 실별자 ID (개인이나 조직의 도메인 주소를 역순으로 입력) Bundle Identifier : 앱 식별 ID (package명)..

[json-server] GitHub 의 json-server 로 30초안에 코딩 없이 REST API 서버 구축하기

30초안에 zero coding 으로 REST API 서버 만들기! 프론트엔드나 앱을 테스트하고 개발할 때 서버 구축없이 json-server 를 통해 REST API 서버를 만드는 방법입니다. 아래에서 설치방법 및 사용방법을 확인할 수 있습니다~ https://github.com/typicode/json-server GitHub - typicode/json-server: Get a full fake REST API with zero coding in less than 30 seconds (seriously) Get a full fake REST API with zero coding in less than 30 seconds (seriously) - GitHub - typicode/json-server:..

📡 Google ~ Git 2021.12.13

[안드로이드/Android] Context (Application Context vs. Activity Context)

안녕하세요! Android Context 가 무엇일까요? 😢 https://developer.android.com/reference/android/content/Context Context | Android Developers developer.android.com Context 는 애플리케이션 환경에 대한 글로벌 정보를 갖는 인터페이스입니다. Context 는 Android 시스템에서 구현체를 제공하는 추상 클래스로, 애플리케이션 별 리소스 및 클래스 접근에 사용되며, 액티비티 실행, 브로드캐스트, 인탠트 수신 등과 같은 애플리케이션 수준 작업에 사용됩니다. Application Context 안드로이드 시스템 상, ActivityManagerService 라는 독립된 애플리케이션에서 애플리케이션과 관..

[Android/Kotlin] Koin (kotlin 으로 작성된 경량화된 Dependency Injection 프레임워크)

DI (Dependency Injection) 패턴 - 컴포넌트간의 의존 관계를 소스코드 내부가 아닌 외부 설정 파일등을 통해 정의되게하는 디자인 패턴중 하나 - 객체를 직접 생성하지 않고 외부에서 주입한 객체를 사용하는 방식 - 인스턴스 간 디커플링을 만들어줌 => 유닛테스트 용이성 증대 ( 객체A 내부에서 객체B 를 사용하는 경우 객체B에 대해 객체A가 의존하고 있다고 볼 수 있으며, 객체A에서 객체B를 초기화하지 않고 사용할 수 있도록 외부에서 객체B를 초기화하여 객체A에 주입해주는 것 ) Ex) Hilt, Dagger Service Locator 패턴 - 중앙 등록자 ‘Service Locator’를 통해 요청이 들어왔을 때 특정 인스턴스 반환 - apk 크기, 빌드 속도, 메서드 수 등 복잡한 ..

[Android/Kotlin] FCM 푸시 Push 알림 구현하기

안드로이드에서 FCM 푸시 Push 알림을 받는 방법 입니다. 1. Firebase Cloud Messaging Firebase 의 프로젝트 생성 및 앱 추가를 합니다. https://eunoia3jy.tistory.com/129 [Android/Firebase] Firebase 프로젝트 생성 및 앱 추가 안녕하세용! 안드로이드 앱에서 Firebase 를 활용하기 위해 프로젝트를 생성하고 앱을 추가 하는 방법입니다. 먼저 Firebase 콘솔창으로 이동하여 로그인 해주세요~ https://console.firebase.google.com/?hl=ko.. eunoia3jy.tistory.com Firebase 클라우드 메시징 문서를 참고하였습니다. https://firebase.google.com/docs..

[Android/Kotlin] 구글 Google 계정 로그인 연동을 위한 firebase console 설정방법 및 소스코드

안녕하세용! 안드로이드 앱에서 Firebase 를 활용하여 Google 로그인 하는 방법 및 소스코드 입니다. 1. Firebase Auth Google 설정 방법 https://eunoia3jy.tistory.com/129 [Android/Firebase] Firebase 프로젝트 생성 및 앱 추가 안녕하세용! 안드로이드 앱에서 Firebase 를 활용하기 위해 프로젝트를 생성하고 앱을 추가 하는 방법입니다. 먼저 Firebase 콘솔창으로 이동하여 로그인 해주세요~ https://console.firebase.google.com/?hl=ko.. eunoia3jy.tistory.com 1-1. Firebase 프로젝트 생성 및 앱 추가가 끝났다면 Firebase Console 에서 빌드 > Authen..

[Android/Kotlin] 코루틴 coroutine

코루틴 Coroutine Android의 비동기 프로그래밍에 권장되는 솔루션으로, 비동기적으로 실행되는 코드를 간소화하기 위해 Android 에서 사용할 수 있는 동시 실행 설계 패턴. 안드로이드의 Background Thread 에서 코드를 처리할 때 사용하는 방법이다. Co(협력, 같이, 함께, 동시에) 라는 뜻과 Routine(특정한 일을 실행하기 위한 일련의 명령) 이라는 두 단어의 합성어로, 동시성 프로그래밍의 개념을 코틀린에 도입한 것 다양한 언어에서 이미 지원하고 있는 개념이다. 통신 시 비동기 처리하는 방법으로 오랜 기간 사용되었던 AsyncTask 가 Deprecated 되면서, 메모리를 효율적으로 사용하면서 AsyncTask 를 대체하는 비동기 처리 방법으로 사용되고 있다. 🚨 Coro..

728x90
반응형