취향에 대하여
·
가끔 끄적임
https://news.hada.io/topic?id=26881 실력 없음. 취향 없음. | GeekNewsLLM 시대에 누구나 앱을 만들 수 있게 되었지만, 진짜 장벽은 실력이 아닌 취향(taste) 이며, 이 장벽은 전혀 낮아지지 않았음공개되는 바이브 코딩 앱 대부분이 포화된 아이디어의 조잡한 복제물news.hada.io https://news.hada.io/topic?id=23223 AI 이전에는 당신에게 취향(Taste)이 없었다 | GeekNews최근 많은 사람들이 AI를 잘 쓰려면 취향(taste) 을 길러야 한다고 말하지만, 정작 그 자신들은 과거에 뚜렷한 취향을 보여주지 못한 경우가 많음취향은 미적 품질에 대한 비판적 판단, 식별, 감상news.hada.io https://news.hada..
AI시대에서 TDD 에 대한 짧은 내 생각
·
가끔 끄적임
현재 클로드 코드를 메인으로 쓰고, 토큰 만료시 codex 를 쓴다.월 4만원 지출만으로도 코드 작성와 작업 효율은 엄청나게 올라갔다. 전에 면접에서 TDD 에 대한 질문을 들은 적이 있다.내 생각도, 면접관의 생각도, 현업에서 빠르게 개발을 해야하는 상황에는 어렵다고 이야기 했던거 같다. 하지만 최근 테스트 코드를 작성해보면서, 생각이 완전히 180도로 바뀌었다.개발자에게 테스트 코드를 작성하는건 꽤나 부담되는 일이다.에너지과 시간을 훨씬더 많이 소비해야 하기 때문에, 가끔은 테스트 코드를 짜는 것이 무서울 정도다. Flutter 로 퀵카이브 앱을 개발하고 테스트 코드를 작성을 완료한뒤에,지금부터 이후 작업은 무조건 TDD 방식으로 개발하기로 마음 먹었다. 신뢰할수 있는 코드가 주는 안정성과 효율성을 ..
HTTPS vs SSH
·
개발 공통 기술
깃허브(GitHub)에서 레포지토리를 처음 만들면 마주하게 되는 HTTPS와 SSH 선택지는 보안과 편의성 사이의 '취향 차이'라고 볼 수 있습니다. 결론부터 말씀드리면, 작동하는 결과는 같지만 문을 여는 열쇠의 종류가 다릅니다. HTTPS 방식은 매번 ID/PW(또는 Personal Access Token)를 입력해야 하거나 캐싱 처리가 번거롭지만, SSH는 '열쇠(Key)'를 미리 등록해두는 방식이라 자동화 환경에서 훨씬 안전하고 매끄럽거든요. 일단 보통 2가지 방식이 어떻게 사용되는지 한번 보자. 1. 왜 두 가지 방식을 모두 제공할까?사용자의 환경과 보안 요구 수준이 제각각이기 때문입니다.HTTPS를 선택하는 이유간편함 : 초보자가 쓰기에 최고!! 별도의 설정 없이 URL만 복사해서 git cl..
생각의 외주화
·
가끔 끄적임
https://www.youtube.com/watch?v=_yumjhDbDWk 대 AI 시대다. 아주 찬양이 자자하다. 그러나 AI가 제공하는 데이터 중에서 환각 데이터는 꼭 제거해야한다. AI 에게 질문한 것을 그대로 100% 받아 들이는 행위는 위험하다.AI 는 생각을 대신 해주고 있고, 머리아픈 생각(논리적인 생각 = 두통)을 안하고 싶은 인간들은 더이상 뇌를 쓰지 않을려고 한다.점점 인간은 점점 멍청해져 간다. 그렇게 인간은 AI 에게 대체 당한다. 사고하지 않는 인간은, 계속 인간일 필요가 없다.왜? 인간은 생각을 하기 때문에, 지구 생물중에서 최강자로 군림했던 것인데,,,,더이상 생각하지 않을 인간이라면, 가축과 뭐가 다른가? 그래서 당신이 인간 이라면, AI 가 나왔더라도생각하는 훈련과 연..
Flutter Custom Starter Pack
·
Flutter/Flutter 개발 생산성 극대화
초기 개발에 필요한 기능들을 탑재한 starter - development - pack 작성 예정 : github 업로드 예정 소셜 로그인riverpodgoRouter스플래시 스크린Lobby 스크린(메인화면 + bottomNavigation 포함)Pretendard 폰트 기본 적용 개발 초기 필요한 기능의 보일러 플레이트 코드를 작성하는 시간을 줄이고, 시작과 동시에 바로 비지니스 기능에 집중하여 개발
InheritedWidget
·
Flutter/Dart
StatefulWidget과 StatelessWidget을 통해 화면을 구성하게 되었을 때, 변화가 필요한 위젯이 트리의 끝부분에 있다면 트리의 top → bottom 까지 불필요한 데이터 전달이 일어나게 된다. (위젯 트리 깊이가 깊을수록, 불필요하게 더 오래걸림)따라서, 바로 Tree 의 Top에 접근하여 바로 데이터를 가져오게 할 수 있도록 하는 것이 바로 Inherited Widget 이다. Inherited Widget은 상태관리 라이브러리의 근간이라 할 수 있는 Provider의 핵심이므로 알아 둘 필요가 있다.구글에서 이런 Inherited 위젯을 만들긴 했지만 사실 맘에 안들었는지 Provider라는 패키지를 쓰라고 권장한다.고로 여러분이 이 글에서 얻어가실거는 Inherited Widge..
추상클래스와 인터페이스
·
Flutter/Dart
개념이해추상클래스 (Abstract Class)‘추상’ → 구체성이 없이 사실이나 현실에서 멀어져 막연하고 일반적인. 또는 그런 것. (이게 추상클래스 표현에 제일 적합 한듯) → 막연하게 구체성없이 머리속에만 있는 = "미완성 설계도" 가구 제작소를 생각해보세요.💡 [의자 설계도] - 추상클래스- 다리 4개 (이미 구현됨)- 앉는 부분 (이미 구현됨)- 등받이 (각자 만들어야 함) ← 추상 메서드 특징:기본적인 부분은 이미 만들어져 있음일부는 각자 완성해야 함이것 자체로는 사용할 수 없음 (미완성이니까)개발 특징:인스턴스화 불가능추상 메서드와 구현된 메서드 모두 포함 가능필드(변수) 선언 가능생성자 정의 가능단일 상속만 가능 (extends)추상메소드는 자식에서 반드시 구현해야함abstract cla..
Extension
·
Flutter/Dart
Flutter/Dart에서 Extension은 새로운 기능을 추가할 수 있는 강력한 기능입니다. (읽기 쉽고 재사용 가능하게) Extension은 타입이 있는 거의 모든 것에 사용 가능합니다:✅ 클래스 (Class)✅ 기본 타입 (int, String, bool 등)✅ 컬렉션 (List, Map, Set 등)✅ Enum✅ 함수 타입 (Function, VoidCallback 등)✅ Future, Stream✅ Nullable 타입✅ Generic 타입유일한 제한은 dynamic 타입에는 extension을 만들 수 없다는 점! 원본 코드를 수정하지 않고도 기존 클래스나 라이브러리에 메서드, getter, setter를 추가할 수 있습니다.BuildContext나 자주 사용하는 타입들에 extension을..