[Android] 데이터바인딩으로 UI 효율적으로 활용 하기

안드로이드 개발 중 xml의 UI와 객체의 연결은 항상 귀찮은 작업으로 생각 됩니다.  이런 불편한 점을 해소하고자 버터나이프 같은 외부 라이브러리 사용하는 개발자들도 많았고 저처럼 그냥 좀 귀찮은 걸 감안하고 그냥 사용하는 개발자들도 있었을 것이라 생각합니다. 하지만 UI 노가다를 줄일수 있는 좋은 라이브러리가 있습니다. 바로 안드로이드에서 제공하는 데이터 바인딩 라이브러리 입니다. Android Developer : https://developer.android.com/topic/libraries/data-binding/index.html#studio_support 데이터 바인딩 라이브러리 환경 * Android 2.1(API7) 이상 * Gradle 1.5.0-alpha1 이상 기존 방식 //xml <TextView  android:id="@+id/text1"  android:layout_centerinparent="true"  android:layout_height="wrap_content"  android:layout_width="wrap_content"/> //activity @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_data_binding); TextView text1 = (TextView) findViewById(R.id.text1); text1.setText("findViewById..."); } 기존에는 TextVie

[AWS] Bastion Host 를 활용한 SSH 접근통제 #1

이미지
AWS 에서 Instance 를 생성하여 사용하고 있다면 유지관리를 위하여 서버에 SSH 접속을 하는 경우가 생기게 됩니다. 기본적으로 무료로 제공되는  Security Group(SG) 을 Chaining으로 구성 하게 되면 간략하게  특정 EC2 인스턴스 에게만 SSH 접속을 허용하는 보안 구성이 가능합니다. 구성하고자 하는 모형은 아래와 같습니다. [SecurityGroup을 통한 SSH 접근제어 구성] AWS 보안 구성을 하기전에는 먼저 Security Group을 생성한 후 EC2 인스턴스 생성시 해당 Security 그룹을 적용하는 방법을 사용하는 것이 순서입니다. 하지만 이미 서버가 운영중에  추가 보안구성을 하는 경우를 감안해서 EC2 인스턴스를 먼저 생성한 후에 Security Group 설정을 진행 하겠습니다. 우선 Bastion Host 역할을 할 EC2 인스턴스를 생성해 보도록 하겠습니다. EC2 Dashboard 로 이동해 Launch Instance 를 선택합니다. Amazone Linux 를 선택 합니다. Free Tier 가 적용되는 T2 Micro 를 선택하고 Review and Launch 를 선택 합니다. Review 화면이 나오면 Launch 를 선택합니다. Key Pair 를 새로 생성하고 Download Key Pair 를 선택하여 Key 파일을 다운로드 한후 Launch Instance 를 선택합니다. View Instance 를 선택하여 생성된 EC2 인스턴스를 확인 합니다. 인스턴스가 정상적으로 생성되었습니다. 접속 IP가  54.157.118.232 인  Instance 가 생성되었습니다. 동일한 방법으로 Web Server 역할을 수행할 EC2 Instance 를 생성해 보도록 하겠습니다. 접속 IP 가 34.224.165.38 인 instance가 생성되었습니다. 분류하기 쉽게

스타트업 그로스해킹 성공사례 (해외)

이미지
* 다음 글은 '그로그 해킹(라이언 홀리데이 저)' 과 '그로스 해킹:성장의 시대를 위한 안내서'(조민희 저/디지털북스) 책에 있는 글을 참고해서 작성되었습니다. * 이 문서는 계속해서 업데이트 될 예정입니다 HotMail 핫메일 핫메일은 최초의 무료 웹 메일 서비스입니다. 창립자들은 처음에 일반적인 방식대로 광고판에 광고를 하거나, 라디오 광고를 하거나, 스팸 메일을 불특정 다수에게 뿌려 광고하는 방식의 마케팅을 고려했습니다. 그러다가 핫메일의 투자자 중 한 명인 티모시 드레이퍼가 핫메일의 모든 보내는 이메일 밑에 문구 하나를 추가할 것을 제안했다고 합니다. 보내는 이메일의 맨 밑에 '추신: 당신을 사랑합니다. 핫메일에서 무료 이메일 계정을 받으세요 (P.S.: I love you. Get your free-e-mail at Hotmail) 라는 메시지가 표시되는 아주 간단한 방법이었습니다. 너무 간단해서 몇 개월 동안 실행을 주저했다고 합니다. 그리고 이 작은 기능이 모든 것을 뒤바꾸었습니다. 이 광고가 귀엽고 창의적이어서가 아니라 많은 사람들이 원하고 필요로 헀던 놀라운 제품을 소개하는 것이기 때문이었습니다. 이 문구를 이메일 하단에 넣은 후 하루 3,000명 정도의 사용자가 있던 핫메일은 6개월 만에 백만 명의 이용자가 생기고, 5주 뒤 이용자 수는 다시 두 배가 되었습니다. 1997년 12월, 거의 1,200만 명의 이용자를 확보한 핫메일은 마이크로소프트Microsoft 가 4억 달러에 인수했습니다. (당시 인터넷 사용자는 고작 7,000만 명이었다고 합니다) 이메일 하단 문구를 넣은 후 핫메일의 성장 이미지 출처: http://bit.ly/2vQljLt 핫메일이 4억 달러의 브랜드가 되기까지 들인 투자 비용은 불과 30만 달러였습니다. 3천만명의 이용자를 확보하는 데에 걸린 시간은 출시로부터 불과 30개월. 지금은 핫메일의 이름은 바뀌었지만 여전히 존재한다고 합니다.

[부트스트랩] 소개와 사용 방법

이미지
부트스트랩 소개  부트스트랩은 웹 디자인을 어떻게 하며 편리하게 할 수 있을까하는 목적에서 나온 프레임워크입니다.  실제로 부트스트랩을 활용하면 웹 디자인에 쏟아야 하는 노력을 절반이하로 줄일수 있으며, 특히 반응형 웹에 대한 고민을 혁신적으로 해결해 줄 수 있습니다.  부트스트랩은 Mark Otto와 Jacob Thornton에 의해 Twitter에서 개발되었으며, GitHub에서 2011 년 8 월 오픈 소스 제품으로 출시되었습니다. 부트스트랩 설치  부트스트랩 설치는 부트스트랩 사이트에서 다운로드 받은 후 크게 3가지 방법으로 사용할 수 있습니다. 웹서버에 올려서 사용하는 방법 CDN(Contents Delivery Network)을 이용하는 방법 Bower라는 패키지를 이용하는 방법  가장 많이 이용하는 방법은 웹서버에 이용하는 방법이며, 2번째 방법은 CDN 상황에 종속적으로 되어 간혹 느려지는 경우가 발생될 수 있습니다. bower는 별도의 패키지관리 도구이며, 자세한 내용은 http://bower.io 를 참고하시면 됩니다. [그림1] 부트스트랩 다운로드   http://bootstrapk.com/getting-started/#download 페이지를 방문하면 [그림1]과 같은 화면을 볼 수 있으며, "부트스트탭 다운로드" 를 클릭하면 "bootstrap-3.3.2-dist.zip"(현재버전3.3.2) 파일을 다운받을 수 있으며, 해당파일을 그림하면 아래와 같은 폴더 구조를 확인할 수 있습니다. bootstrap/ ├── css/ │ ├── bootstrap.css │ ├── bootstrap.css.map │ ├── bootstrap.min.css │ ├── bootstrap-theme.css │ ├── bootstrap-theme.css.map │ └── bootstrap-theme.min.css ├── js/ │ ├── bootst