목록개발/자료 (9)
비트와 자장가
UX, 사용자 경험은 중요하다. 애플은 인터페이스의 유려함을 이렇게 정의한다: 의식의 연장 extension of mind 도구와 인간의 의식은 함께 발달해 왔고, 이는 떼어놓을 수 없는 관계를 형성하고 있다. 화면을 손으로 직접 조작하는 시대에 들어 이 명제는 그 어느 때보다 중요해졌다. 생각하는대로 동작하는 것. 이는 사용자의 의도를 파악하고 그에 대응하는, 또, 대응을 준비하는 설계가 전제되어야 한다. UI, 사용자 인터페이스란 무척 복잡한 것을 사용자에게 간단하게 느껴지도록 포장하는 것이다. 애플은 이걸 잘 한다. 사용자는 "탭"이란 제스처를 떠올릴 때 특정 영역에 손가락을 대는 것 이상으로 생각하지 않는다. 개발자에게는 탭도 디자인해야 하는 영역이다. 탭 활성화가 되는 추가 마진은 어디까지 줘야..
동의. Build Your Own X This repo is forked from awesome anistefanovic/build-your-own-x , site is created and maintained by Kalan which converted github README.md to website, and probably will add more opinionated resource. Follow me on Twitter or contrinute your article link on build-your-own-x.vercel.app
Understanding a few concepts of macOS applications by building an agent-based (menu bar) app With advances in the frameworks and tools we use to develop software, creating a new app seems like magic. We just click a few buttons, and everything is created for us. I enjoy magic, but I think that sometimes we end up being Framework rderik.com 메이크파일만 사용해 간단한 에이전트 앱을 만들어보는 실습 자료다. 엑스코드를 안 쓰고 싶은 마음을 제..
아래는 시스템콜 write를 호출해 "hello world"와 개행문자를 출력하는 간단한 C 프로그램이다: #include int main() { write(1, "hello world\n", 12); } gcc hello.c && ./a.out 위를 맥용 어셈블리어로 바꾸면 아래와 같다: globalstart section.text start: movrax, 0x02000004;write() movrdi, 1 movrsi, string movrdx, 12 syscall movrax, 0x02000001;exit() xorrdi, rdi syscall section.data string: db"hello world",10;"hello world\n" nasm -f macho64 hello.s && ld ..
논리회로란 입력이 출력을 결정하는 회로이다. 논리회로는 기호로 추상화되지만, 부품이라기보단 실제로는 베이스에 전류가 들어오는지의 여부에 따라 전류의 흐름을 바꿔주는 부품인 트랜지스터와 저항만으로 만들어진 간단한 회로 구성이다. (TTL 7400/7402 같이 네 개의 낸드/노어 게이트를 하나의 칩으로 묶은 부품을 흔하게 구할 수 있고, 대개는 칩 안의 나노미터 단위의 로직 셀로서 접하게 된다) 만드는 방법은 다음과 같다. 영상에서 LED는 전류가 흐르는지(출력이 1인지)를 보여주기 위해 추가된 것이라는 점을 참고하자. 논리 게이트 중 낸드nand 게이트와 노어nor 게이트는 유니버셜 게이트이다. 그 말인즉슨, 낸드나 노어만 있으면 어떤 논리게이트든 만들 수 있다는 것이다. 더보기 실제로, 우리가 사용하는..
이전 글에서 말했던 것처럼, 프로그램 언어의 기초 모든 프로그램은 순차, 분기, 반복의 집합체로서 동작한다. 1. 순차sequence 프로그램은 줄마다 순서대로 실행된다. 사람이 물을 컵에 받아 마시는 것을 의사코드pseudo-code(프로그래밍언어의 구조를 eastriver-today.tistory.com 컴퓨터에서는 모든 것을 숫자로 나타낸다. 프로그래밍 언어는 컴퓨터가 아닌 사람을 위한 것인데, 사람은 숫자로 생각하지 않으므로, 모든(실용적인) 프로그래밍언어는 자료형data type을 가지고 있다. 자료형을 한 마디로 정의하자면 이진숫자를 특정 형태로 묶은 것이다. 프로그래밍 언어에서 자료형은 사용의 관점에서 항상 명시적으로 선언해야 하거나, 추론해주거나, 내부적으로만 존재하는 세 가지 경우로 나뉜..