CacaoPods는 Swift 혹은 Object-C 프로젝트에서 사용할 수 있는 의존성 관리도구입니다. .NET 진영의 Nuget이나 Node 진영의 NPM과 동일한 역할을 담당하게 됩니다. 애플에서 공식 개발한 것은 아니고, 2011년 Eloy Durán와 Fabio Pelosin에 의해 개발되었으며 가장 방대한 라이브러리 풀을 제공하고 있으며 가장 널리 사용되는 도구입니다. (애플에서는 Swift Package Manager라는 의존성관리도구를 제공하지만 라이브러리 규모에서 CocoaPods에 비해 밀리는 편입니다.) Flutter iOS 프로젝트에서도 CocoaPods을 통해 패키지를 관리하는 경우가 많습니다. 여기서는 Flutter 프로젝트에 CocoaPods를 설치하고 사용하는 방법에 대해서 소..
모바일 앱의 백엔드 서비스를 ASP.NET 프로젝트로 개발한다면, 안드로이드(혹은 아이폰)에서 ASP.NET 프로젝트(IIS Express)에 접속할 수 있어야 합니다. 그래야 디버깅을 손쉽게 진행할 수 있지요. 하지만 기본적으로 IIS Express는 외부에서의 접속을 차단하기 때문에, 몇가지 설정이 필요합니다. 이 포스트에서는 IIS Express를 외부에 노출시키는 방법에 대해 설명합니다. 먼저 IIS Express가 실행되는 PC의 IP를 확인해주세요. 여기서는 "192.168.0.143"이라고 가정합니다. 방화벽에 예외를 추가해주세요. 만약 ASP.NET 프로젝트에서 사용하는 포트번호가 "49393"이라면 다음과 같은 명령어로 예외를 추가할 수 있습니다. netsh advfirewall fire..
Android에서는 dp(Density-independent Pixel) 단위를 썼다면, Flutter에서는 Logical Pixel 단위를 사용합니다. 단위만 다를 뿐 실제로 안드로이드의 dp 단위와 동일합니다. 이미지의 경우에는 res/drawable-* 형태의 폴더명으로 이미지를 분류했다면, Flutter에서는 iOS와 동일하게 2.0x, 3.0x와 같은 폴더명을 사용하여 이미지를 분류합니다. Density dots per inch dots per cm Flutter Image Folder ldpi 120 47.2 0.75x mdpi 160 62.9 1.0x hdpi 240 94.5 1.5x xhdpi 320 125.9 2.0x xxhdpi 480 188.9 3.0x xxxhdpi 640 251.9..
Flutter을 통해 MaterialApp을 생성할 때 ThemeData를 통해서 전체적인 Theme을 설정할 수 있습니다. class MainApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( title: 'Flutter', theme: ThemeData( primaryColor: Color(0xFF174378) ), ); } } ThemeData를 통해 세세한 색상 값을 일일이 설정할 수 있습니다. 그러나 모든 색상을 하나하나 조절하는 것은 상당히 번거로운 작업일 수 있습니다. ThemeData({ Brightness brightness, VisualDensity visualDen..
소프트웨어 공학에서 학문적으로 말하는 TDD의 장단점과 실무에서 느끼는 장단점에는 차이가 있음. 여기에서는 현업에서 실무자들의 피드백을 바탕으로 정리함 시간과 비용을 증가시킨다 TDD는 평균적으로 1.5배의 시간과 비용을 증가시킴 잘짜여진 테스트 코드를 작성해야 하기에 당연한 결과임. 비용이 높다는 것은 변화에 굼뜨다는 것이기에, 자주 빠르게 요구사항이 변화하는 부분은 TDD에서 제외하기도 함 TDD 투자비용을 회수하는 시기는 보통 2-3년 이후 현업의 연구보고서에 따르면 평균적으로 2-3년 후 부터, 극적인 효과를 볼 수 있다고 함. 예를들어 수년 후에 팀이 개편되거나 입퇴사로 사람이 바뀌는 경우 교육이나 적응기간이 필요하기 마련인데, TDD코드를 작성해두었다면 사람과 무관하게 일관된 Quality를 ..
파일에 작성된 방대한 Class들의 전체 구조를 파악하거나, 원하는 위치로 이동 할 때 Code Folding은 매우 유용한 기능입니다. 여기서는 Android Studio에서 Code Folding을 실행하는 방법을 안내합니다. Code Folding 활성화 Android Studio 상단메뉴의 File → Settings 클릭 Editor → General → Code Folding 이동 원하는 Code Folding 체크 코드폴딩 실행 전체 폴딩 : [Ctrl + Shift + Minus] 폴딩 해제 : [Ctrl + Shift + Plus] 메서드 레벨만 Folding: [Ctrl + Shift + Minus] → [Ctrl + Shift + Plus] 순으로 연속입력 코드폴딩 결과 [CodeFo..
수많은 오픈소스 아이콘 중에서 원하는 아이콘만 사용하고 싶을때, 직접 제작한 아이콘을 사용하고 싶을 때 이용할 수 있는 서비스를 안내해드립니다. FlutterIcon.com에 접속합니다. 현존하는 오픈소스 아이콘 리스트가 제공되며, 원하는 아이콘을 선택합니다. 직접 제작한 아이콘은 SVG로 만들어 추가할 수 있습니다. 좌측 상단에 사용할 폰트 이름을 기재하고, 다운로드를 입력하면 Zip파일이 다운로드 됩니다. 압축파일을 풀면 폰트파일, json, dart 파일이 나타납니다. config.json은 현재 폰트파일에 대한 메타정보입니다. fluttericon.com에 재방문하셨을 때 Import를 통해 선택된 아이콘을 복원할 수 있습니다. .ttf 파일을 플러터 프로젝트의 fonts 폴더에 추가합니다. (예..
이 페이지는 https://flutter.dev/docs/cookbook/design/fonts를 번역한 내용입니다. 시점에 따라 원문과 다소 차이가 존재할 수 도 있습니다. 또한 원저자의 요청에 의해 언제든지 변경, 삭제될 수 있습니다. 안드로이드와 iOS가 훌륭한 품질의 시스템 폰트를 제공함에도, 디자이너의 가장 흔한 요청사항 중 하나는 커스텀 폰트에 관한 것입니다. 예를들어 디자이너에 의해 직접 제작된 폰트를 사용할 수 도 있고, Google Fonts와 같은 외부 사이트에서 폰트를 내려받아 사용할 수 도 있습니다. 참고: google_fonts 패키지 사용을 고려해보세요. 1,000개가 넘는 오픈소스 폰트유형을 손쉽게 사용할 수 있습니다. 참고: 여러 프로젝트에서 특정 폰트를 재사용한다면, 폰트를..
최초 설치 후 접속 - 아이디/패스워드: ubuntu/ubuntu - 화면 지우기: clear - 디렉터리 나열: ls (-l 옵션: 소유자, 파일크기 등 상세정보 출력, -a 옵션: 숨김파일 출력) - 디렉터리 이동: cd 디렉터리명 - 관리자 권한 전환: sudo -su 인터넷 연결확인 유선으로 연결된 경우 별도 설정 없이 바로 인터넷에 연결되며, 연결이 정상적인지 확인하기 위해 ping 명령어를 사용함 예를들어 공유기로 IP를 날려보자 - 예시) ping -c 5 192.168.0.1 - 설명) ping -c 요청수 대상IP(또는 도메인) 만약 WIFI를 사용하고 있다면, 인터넷 설정 파일(/etc/netplan의 yaml 파일)을 직접 편집해야함 인터넷 아이피 주소확인 로컬IP: ip addr 또..
이 페이지는 https://flutter-ko.dev/docs/development/accessibility-and-localization/internationalization를 번역한 내용입니다. 시점에 따라 원문과 다소 차이가 존재할 수 도 있습니다. 또한 원저자의 요청에 의해 언제든지 변경, 삭제될 수 있습니다. 다음을 배우게 됩니다. 장치의 Locale(사용자가 선호하는 언어) 추적하기 Locale에 따라 달라지는 값을 관리하는 방법 앱에서 지원하는 Locale을 정의하는 방법 다른 언어를 사용하는 사용자에게 앱을 배포 할 경우 앱을 국제화해야 합니다. 즉 앱이 지원하는 "지역(Locale)"이나 언어 별로 텍스트, 레이아웃 등의 값들이 "현지화(Localize)" 될 수 있는 방법으로 앱을 개발..
- WPF
- Android
- Xamarin.iOS
- TypeScript
- Xamarin.Forms 요약
- VisualStudio
- Xamarin.Forms eBook
- npm
- StringComparison
- AntDesign
- Xamarin.Forms
- MS SQL
- .NET Standard
- ios
- material-ui
- flutter
- React
- Vue
- ASP.NET Core
- Xamarin
- Total
- Today
- Yesterday