IDE & Framework

    Alamofire를 통해 POST/GET 통신하기

    Alamofire를 통해 POST/GET 통신하기

    Alamofire는 swift의 Foundation networking을 기반으로 한 http 네트워킹 라이브러리 입니다. 네트워크 작업을 단순화 시켜주어서 굉장히 쓰기 편리합니다. 굉장히 다양한 기능이 있는데요, 그중 GET/POST 방식으로 http통신을 해서 응답값을 받아오는것 까지 구현해보도록 하겠습니다. Alamofire은 크게 다음과같이 두가지로 나뉩니다. request url : 메시지를 보내고 응답을 요청할 인터넷 URL 주소 method : .get (post사용시에는 아이에 다른 방법으로 사용합니다.) parameters : 요청시 같이 보낼 파라미터 encoding : 사용할 encoding 방식 (URL, JSON, PropertyList 세가지 지원) hearder : [Strin..

    m1 기반 mac에서 cocoapod 사용하기

    m1 기반 mac에서 cocoapod 사용하기

    Alamofire를 사용하기 위해 cocoapod을 설치하고 사용했는데, m1칩은 별도의 추가과정이 있어야 오류가 안나고 사용이 잘 되더라구요. 저같이 삽질하시지 않았으면 해서 포스팅 남기겠습니다. value-of-life.tistory.com/152 Swift(스위프트) - mac(맥) m1 에서 cocoapods 설치 및 적용하기 애플의 앱을 개발하기 위해 필요한 라이브러리 모음 집 cocopods 설치 과정을 알아보겠습니다. 1. MAC m1에서 cocoapods를 설치하기 위한 사전 설정 1.1 Finder -> 응용 프로그램 -> 터미널을 복제하여 터미 value-of-life.tistory.com 위 블로그의 방법대로 하시면 됩니다. 터미널도 로제타를 사용해서 여는건 상상도 못했네요...허허

    Storyboard 사용해보기

    Storyboard 사용해보기

    이번 개인프로젝트를 위해 간~단한 토이프로젝트를 진행해 보았습니다. ios 개발은 처음이기 때문에 접근성이 좋은 Storyboard를 사용하려고 합니다. android studio, java window builder, unity등을 써봤습니다만.. 이렇게 낯설지는 상상도 못했네요🥲 제 삽질이 다른 어떤 누군가에겐 도움이 되길 바라며, 포스팅 시작해보겠습니다. new project부터 시작해 보겠습니다! 다른 포스팅들 보면 버젼이 달라서 new project의 구성부터 다르더군요. iOS 개발을 할것이니 iOS탭에서 App을 클릭해 줍니다. 그리고 next! 그럼 이런 화면이 뜰텐데요, 보통 다른 프로그램들은 딱히 설정할 필요가 없겠지만... 현재 ios applicationd의 개발방식은 Storybo..

    ios Stroyboard란?

    ios Stroyboard란?

    nib, xib를 이어 ios SDK5부터 도입된 개념입니다. 시각적 표현에 강력한 장점을 지니고 있습니다. 실행흐름을 제어할 수 있고 뷰를 표현하는데 있어서는 코드를 잘 몰라도 쉽게 작성할 수 있습니다. 그리고 뷰를 작성하는데 있어서 긴 시간을 들이지 않습니다. 하지만 한계와 단점또한 명확합니다. 어플리케이션의 구조가 거대해지면 스토리보드의 로딩시간이 지나치게 길어지게 되고, 가독성이 떨어지게 됩니다. 그리고 단순 코딩으로는 뷰에 아이템을 연결할 수 없기 때문에 아이템들 하나마다 일일이 Identifer를 연결해주어야 해 재사용성이 떨어지고 번거롭습니다. 마지막으로, 충돌이 빈번하고 병합이 까다로워 협업하기가 용이하지 않습니다. 2019년도에 xib와 스토리보드의 장점을 합쳐 코딩을 통해 UI를 개발하..

    [(가제)강습스케쥴러] application preview

    [(가제)강습스케쥴러] application preview

    서론 어머님께서 인라인 스케이트 강습을 하시며 수기로 회원관리가 너무 고단하다고, 제가 개발을 의뢰하셨습니다. ios쪽 진로를 희망하며 집중하고있는데, 어머님이 노트20인지라 어쩔수없이 안드로이드 개발을 하게 되겠네요. 기간은 넉넉히 5월까지로 잡고 개발을 시작합니다. 개요 어머님과 상의하 어머님 스타일에 맞춰 관리 어플리케이션을 설계하였습니다. 주요 기능은 간편한 수강생 등록 및 관리, 보기쉽게 여러 방법으로 데이터를 출력해주는 뷰 입니다. DB서버는 호스팅 서버로 쓰면 서버를 여는 시간이 불규칙해 서비스가 어렵다 판단, application 내부에서 SQLite를 사용합니다. 어머님의 스마트폰 단말기 분실 가능성을 고려해 지속적으로 데이터를 외부로 백업하는 방법을 고려중입니다. 화면구성 1. 첫 화면..

    [기상알리미] application preview

    [기상알리미] application preview

    서론 iOS앱 개발 수준을 끌어올리려 개인프로젝트를 진행하려고 합니다. Android를 작업하던 수준과 동일하게 끌어올리려 기술적용 위주의 프로젝트가 될 것 같습니다. 주제도 너무나 식상한 주제이지만... 기술적용이 우선되게 방향을 설정하다 보니 어쩔 수 없었던것 같습니다. 개발기간은 다음주 일요일인 4월 24일 완성을 목표로 합니다. 개요 data server에 회원의 정보를 저장해서 가입되있다면 저장된 지역의 기상을 손쉽게 볼 수 있습니다. DB서버는 사설 호스팅 서버의 MySQL 5.0.11을 사용합니다. 클라이언트-DB간 통신은 Spring boot으로 서버를 제작해 중계합니다. 클라이언트는 alamofire API를 사용해 Http communication을 POST 방식으로 통신할 것입니다. ..

    iOS 앱의 생명주기 (Application Lifecycle)

    iOS 앱의 생명주기 (Application Lifecycle)

    0. 서론 안드로이드보다 ios의 생명주기가 단순했던 이유는 ios가 멀티테스킹이 불가능했기 때문이였습니다. ios13이후 ios도 멀티테스킹이 가능해지면서 SceneDelegate라는 새 위임객체가 등장했습니다. 이후 AppDelegate가 관장한 생명주기 관리의 대다수가 SceneDelegate로 옮겨지게 되면서 AppDelegate는 앱의 초기 구동 및 전체에 관련된 이벤트의 처리정도를 담당하게 되며 기능이 축소됬습니다. 단, Scene 기능은 명시적으로 사용(opt-in)해야하기 때문에 info.plist에 키를 추가해주지 않으면 SceneDelegate은 사용할 수 없고 ios13이전처럼 AppDelegate이 생명주기를 관장하게 됩니다. 그러므로, 우리는 둘 다 공부해야 합니다 ^-^....흑..

    iOS 특징

    iOS 특징

    간단하게 서술해보도록 하겠습니다. 우선 ios는 object-c / Swift언어 기반으로 작성됩니다. delegate작업을 안드로이드는 adapter, ios는 delegate로 처리합니다. 앱 화면 개발은 UIViewController, StroyBoard을 통해서 진행되구요 특정 카테고리에 모여있는 환경설정 및 엑세스 권한이 모여있습니다. 훌륭한 애니메이션 품질과 뒤로가기 버튼이나 기능이 따로 없어 앱에 구현을 해주어야 한다는 점, 애플스토어의 철저한 앱 검수로 일단 검수가 길고 리젝이 자주 이루어지지만, 대신에 사용자들은 악성 어플리케이션으로부터 비교적 안전할 수 있다는 점도 있겠네요. 마지막으로 폐쇄성과 폐쇄성으로 기인한 보안성이 있겠습니다. 안드로이드는 공유저장소가 있어 모든 앱이 접근할 수 ..

    Mac에서 android개발환경 구축하기

    Mac에서 android개발환경 구축하기

    1. java jdk 설치여부 확인 먼저 java jdk가 설치되어 있아야 합니다. 잘 모르시겠다면, 터미널에 java -version을 입력합니다. 아래와 같이 정상적으로 버전이 출력됬다면 설치를 하신거죠 위 사진은 환경변수가 설정이 안된 화면입니다. 환병변수 설정 꼭!!! 해주셔야 합니다. 환경변수 설정 바로가기 2. android 다운로드 아래 공식 사이트로 들어가서 다운을 받습니다. developer.android.com/studio/

    [이론] 프로토콜 프로그래밍이란?

    [이론] 프로토콜 프로그래밍이란?

    Protocol Oriented Language -POP 상속시 모든 속성과 행위를 공유하는 객체지향과는 달리 필요한 부분만 프로토콜로 분리해서 만들 수 있고, 다중 프로토콜로 구현할 수 있습니다. 이는 참조타입의 참조문제에서 더 자유롭고, 다중상속이 불가능한 한계를 뛰어넘으며, 더 나은 추상화 매커니즘을 구현할 수 있습니다. 이부분은 말보다 예제를 보는게 훨씬 더 좋아서... 좋은 글 링크 걸겠습니다..ㅎ https://medium.com/@Alpaca_iOSStudy/protocol-oriented-programming-pop-2db7d4d02747 Protocol Oriented Programming(POP) POP에 대한 얕은 공부 medium.com https://blog.yagom.net/53..

    [이론]  함수형 프로그래밍이란?

    [이론] 함수형 프로그래밍이란?

    개요 함수형 프로그래밍은 자료처리를 수학점 함수의 계산으로 취급하고 상태와 가변 데이터를 멀리하는 프로그래밍 패러다임이다. 프로세스가 함수단위로 순서대로 진행된다. 문이 아닌 식이나 선언으로 수행되는 선언형 프로그래밍 패러다임을 따르며, 프로그래머가 모든 것을 예측하고 통제해야 하므로 세가지 원칙이 있다. 원칙 입출력이 순수(순수함수) 반드시 하나이상의 인자를 받아 결과값을 리턴한다. 부작용 및 부산물이 없어야 함 (no side effect) 바꾸고자 하는 변수 외에는 변화가 있어서는 안된다. 함수와 데이터 중점 사고 핵심개념 순수함수(pure function) 동일한 입력엔 항상 같은 값을 리턴한다. 함수의 리턴은 오로직 그 함수의 입력값에 의존한다. 함수의 실행은 프로그램의 실행에 영향을 미치지 않..

    [이론]객체지향 프래그래밍(OOP) 이란?

    [이론]객체지향 프래그래밍(OOP) 이란?

    Object-Oriented Orogramming, OOP 개요 C언어는 절차지향 프로그래밍으로써 프로세스가 함수단위로 순서대로 진행됩니다. 반면 OOP는 객체들의 유기적인 관계를 통해 프로세스가 진행됩니다. 애플리케이션은 객체의 집합이며, 객체들을 유기적으로 연결해 프로그래밍합니다. OOP의 기본 구성 요소 클래스(Class) 같은 종류의 집단에 속하는 속성과 행위를 정의 객체 (Object) 클래스의 인스턴스로써 상위클래스의 특징을 가지면서 개별적인 특성이 존재합니다. 매서드(Method) 클래스로부터 생성된 객체의 행위합니다. 예를들자면, 사람이라는 클래스가 있다면 저는 사람이라는 클래스에 속합니다. 거기에 저랑 똑같은 사람은 어디에도 존재하지 않으므로 저는 객체라고 할 수 있습니다. 그리고 제가 ..