본문 바로가기
[iOS Study] Objective-C [iOS Study] Objective-C 출처 : 아론 힐리가스의 iOS 프로그래밍 -iOS 앱은 코코아 터치(Cocoa Touch) 프레임워크를 사용하여 Objective-C 언어로 작성된다.Objective-C 는 C 언어의 확장이며 코코아 터치 프레임워크는 Objective-C 클래스의 모음이다. - 일반적으로 Objective-C 에서는 인스턴스 변수명을 밑줄(_) 로 시작한다. - 객체를 만들기 위해서는 클래스에 alloc 메세지를 보낸다. 이에 클래스는 메모리(힙)에 객체를 만들고 변수에 저장된 그 객체의 주소를 준다. -Party* partyInstance = [Party alloc];[partyInstance init]; 새로 할당한 인스턴스에 보내는 첫 메시지는 항상 초기화 메시지다. .. 2016. 2. 13.
[iOS Study] 간단한 iOS 앱 만들기 [iOS Study] 간단한 iOS 앱 만들기 출처 : 아론 힐리가스의 iOS 프로그래밍 -모델과 뷰는 서로 통신하지 않는다. -XIB 은 “집” 이라고 읽는다.XML Interface Builder 를 의미한다. -Xcode 에서 좌측 section 을 [네비게이터 영역], 우측 section 을 [유틸리티 영역] 이라고 부른다.유틸리티 영역의 상단의 [인스펙터(inspector)] 와 하단의 [라이브러리(library)] 로 구성된다. -프로젝트 네비게이터의 그룹은 순전히 파일을 구성하는 데만 사용되고 실제 파일 시스템에 디렉터리 형태로 만들어지지는 않는다. -인터페이스 빌더는 편집기 영역을 두 부분으로 나눈다.왼편의 [독 (dock)]과 오른편의 [캔버스 (canvas)]이다. 독은 XIB 파일 내.. 2016. 2. 12.
[android] expandable listview tutorial [android] expandable listview tutorial activity_main.xml view_list_group.xml view_list_item.xml MainActivity.javapackage com.example.test; import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map; import android.app.Activity;import android.os.Bundle;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widge.. 2015. 11. 1.
[Effective Java] 불필요한 객체의 생성을 피하자. 불필요한 객체의 생성을 피하자. - 기능적으로 동일한 객체를 필요할 때마다 매번 새로 생성하기보다는 하나의 객체를 재사용하는 것이 좋을 때가 많다. 재사용을 하면 객체 생성에 소요되는 비용(시간과 자원)이 절감되어 실행 속도가 더 빨라지고 코드도 보기 좋게 작성할 수 있다. 불변(immutable) 객체는 항상 재사용이 가능하다. - 불 필요한 객체 생성을 막기 위한 첫번째 좋은 방법은 static 팩토리 메소드를 사용하는 것이다. - 불변객체가 아닌 가변객체더라도 상태가 변경되지 않는 것이 보장되면 재사용 가능하다. - 재사용을 막기 위한 static 팩토리 메소드에서 늦 초기화 ( lazy initialization ) 을 하는 경우가 있는데, 후에 다루겠지만 두드러진 성능 개선이 나타나진 않고, 오.. 2015. 4. 30.
[CSS] Less 란 무엇인가? [CSS] Less 란 무엇인가? Less 란 무엇인가? Less 는 CSS pre-processor 이다.CSS language 의 확장판으로, variable, mixin, function 등의 추가적인 기능을 제공하는 언어이다.유지보수가 더 좋고, theme 을 지정할 수 있고, 확장성도 좋다. ex) @base : #f938ab; .box-shadow(@style, @c) when (iscolor(@c)){-webkit-box-shadow:@style @c;-moz-box-shadow: @style @c;-box-shadow: @style @c;} .box-shadow(@style, @alpha: 50%) when (isnumber(@alpha)){.box-shadow(@style, rgba(0,.. 2014. 2. 10.
[android] NavigationDrawer Tutorial android, NavigationDrawer Tutorial Layout You should use DrawerLayout to enable your app edge activated for open drawer automatically.Otherwise you have to implement drawer open touch event by yourself. You must keep in mind that FrameLayout that is responsible for drawer has to be come last.Because android draws xml declared layout from the bottom so that the drawer will be come most upper part.. 2013. 11. 28.
안드로이드 4.4 KitKat ( 킷캣 ) 뭐가 달라졌나? 안드로이드 4.4 KitKat ( 킷캣 ) 뭐가 달라졌나? 안드로이드 4.4 KitKat ( 킷캣 ) 뭐가 달라졌나? 4.1 부터 Jelly Bean 이라는 코드를 써온 안드로이드는이번 4.4부터 KitKat( 킷캣 ) 으로 새로운 코드를 부여했다. 보통은 어느 정도 큰 변화가 있을 때 코드명을 변경하는데,이번에는 메모리 이외에는 미래를 위한 초석작업인 자잘한 변화만 있는데도 코드명을 부여했다. 이는 이제는 안드로이드가 꽤나 안정적인 상태로 접어들었다는 이야기가 될수도 있고,더 이상 기술적으로나 아이디어적으로나 (요즘은 아무데나 붙이는.. ) 혁신이라 불릴 정도의 개선점을 찾을 수 없었거나 양 자 중 하나일 것이다. 우선 무엇이 바뀌었나 보자. 1. 메모리 이용량. 꼭 필요하지 않은데도 부팅과 동시에 서.. 2013. 11. 12.
[android] TransitionDrawable 을 잘 쓰면 훌륭한 애니메이션이 될 수 있다. TransitionDrawable 을 잘 쓰면 훌륭한 애니메이션이 될 수 있다. TransitionDrawable 의 존재는 익히 알고 있었으나, 드디어 테스트를 해 보았다. TransitionDrawable 은 2개의 이미지를 setting 해놓고 transition 을 시키면, fade in, fade out 효과처럼 이미지가 교체된다. 더 놀라운 것은 매우 부드럽게 된다는 것이며, 2개 이상의 이미지도 충분히 소화할 수 있고, 수치만 바꿈으로서 바뀌는 속도를 쉽게 조절할 수 있다. 자 이 위대한 녀석이 얼마나 간단하게 구현되는지예제 코드 ( example code ) 를 통해서 알아보자. ImageView imageView = new ImageView( this );TransitionDrawable.. 2013. 10. 1.
[android] camera take and crop ( 사진 찍으면서 crop 까지 하기 ) 안드로이드, 사진 찍으면서 crop 까지 하기 갤러리로부터 이미지 선택하며 크롭하는 방법. Camera 로 사진을 찍으면서 Crop 까지 하는 sample code. private static final int REQUEST_CODE_PROFILE_IMAGE_CAPTURE = 545;private static final int REQUEST_CODE_PROFILE_IMAGE_CROP = 2103; private static final String TYPE_IMAGE = "image/*";private static final int PROFILE_IMAGE_ASPECT_X = 3;private static final int PROFILE_IMAGE_ASPECT_Y = 1;private static fina.. 2013. 8. 5.
반응형