{"action":"created","comment":{"url":"https://api.github.com/repos/ridi/style-guide/pulls/comments/222604904","pull_request_review_id":161529879,"id":222604904,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIyMjYwNDkwNA==","diff_hunk":"@@ -0,0 +1,35 @@\n+# BEM 코딩 스타일\n+\n+## 도입 배경\n+각기 다른 방법으로 스타일시트가 작성되어왔습니다. 스타일시트 일관성 유지를 위해 CSS 방법론 도입을 고려하였고, 그 중 BEM을 선택했습니다. 그 이유는 상대적으로 러닝 커브가 적어 빠르게 도입할 수 있고, 컴포넌트 단위의 개발과 잘 어울려 많은 수의 컴포넌트를 개발하고 있는 팀 상황에 적합했기 때문입니다.\n+ \n+## 스타일 가이드\n+[BEM 방법론](http://getbem.com/)을 따릅니다. 클래스 이름의 길이를 줄이기 위해 Block, Element, Modifier를 표현하는 방식을 간략하게 변경해서 사용합니다.","path":"BEM.md","position":7,"original_position":7,"commit_id":"b93979effd27ddb1ae54d7dcd3d9461d3e5cfa0e","original_commit_id":"b93979effd27ddb1ae54d7dcd3d9461d3e5cfa0e","user":{"login":"incleaf","id":7221609,"node_id":"MDQ6VXNlcjcyMjE2MDk=","avatar_url":"https://avatars2.githubusercontent.com/u/7221609?v=4","gravatar_id":"","url":"https://api.github.com/users/incleaf","html_url":"https://github.com/incleaf","followers_url":"https://api.github.com/users/incleaf/followers","following_url":"https://api.github.com/users/incleaf/following{/other_user}","gists_url":"https://api.github.com/users/incleaf/gists{/gist_id}","starred_url":"https://api.github.com/users/incleaf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/incleaf/subscriptions","organizations_url":"https://api.github.com/users/incleaf/orgs","repos_url":"https://api.github.com/users/incleaf/repos","events_url":"https://api.github.com/users/incleaf/events{/privacy}","received_events_url":"https://api.github.com/users/incleaf/received_events","type":"User","site_admin":false},"body":"엄밀히 말하면 React style을 따르고 있지는 않습니다. \r\nReact style은 가장 대중적인 컨벤션을 기준으로 다음과 같이 바꾸고 있습니다.\r\n\r\n`__element` -> `-element`\r\n`--modifier` -> `_modifier`\r\n\r\n보시다싶이 언더스코어와 대시가 반전되는데 굳이 반전될 이유 없이 구분자를 두 번쓰는 것에서 한 번으로 줄이는 것이 덜 혼란스러울 것으로 생각됩니다. 개인적으로 에디터에서의 편리함은 주관적인 요소이고 주된 이유가 되면 안된다고 생각합니다. 구분자를 바꾸게 된 이유는 본문에 적혀있는 *클래스의 이름을 줄이기 위해* 정도로 설명될 수 있다고 생각했는데 조금 부족할까요?","created_at":"2018-10-04T09:50:32Z","updated_at":"2018-10-04T09:50:33Z","html_url":"https://github.com/ridi/style-guide/pull/102#discussion_r222604904","pull_request_url":"https://api.github.com/repos/ridi/style-guide/pulls/102","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/ridi/style-guide/pulls/comments/222604904"},"html":{"href":"https://github.com/ridi/style-guide/pull/102#discussion_r222604904"},"pull_request":{"href":"https://api.github.com/repos/ridi/style-guide/pulls/102"}},"in_reply_to_id":222598796},"pull_request":{"url":"https://api.github.com/repos/ridi/style-guide/pulls/102","id":214206770,"node_id":"MDExOlB1bGxSZXF1ZXN0MjE0MjA2Nzcw","html_url":"https://github.com/ridi/style-guide/pull/102","diff_url":"https://github.com/ridi/style-guide/pull/102.diff","patch_url":"https://github.com/ridi/style-guide/pull/102.patch","issue_url":"https://api.github.com/repos/ridi/style-guide/issues/102","number":102,"state":"open","locked":false,"title":"BEM 코딩 스타일 추가","user":{"login":"incleaf","id":7221609,"node_id":"MDQ6VXNlcjcyMjE2MDk=","avatar_url":"https://avatars2.githubusercontent.com/u/7221609?v=4","gravatar_id":"","url":"https://api.github.com/users/incleaf","html_url":"https://github.com/incleaf","followers_url":"https://api.github.com/users/incleaf/followers","following_url":"https://api.github.com/users/incleaf/following{/other_user}","gists_url":"https://api.github.com/users/incleaf/gists{/gist_id}","starred_url":"https://api.github.com/users/incleaf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/incleaf/subscriptions","organizations_url":"https://api.github.com/users/incleaf/orgs","repos_url":"https://api.github.com/users/incleaf/repos","events_url":"https://api.github.com/users/incleaf/events{/privacy}","received_events_url":"https://api.github.com/users/incleaf/received_events","type":"User","site_admin":false},"body":"[BEM 코딩 스타일](https://github.com/incleaf/style-guide/blob/master/BEM.md)\r\n","created_at":"2018-09-10T06:08:48Z","updated_at":"2018-10-04T09:50:33Z","closed_at":null,"merged_at":null,"merge_commit_sha":"60ef7ecc968cb02e68152241b05f5dae4f7997aa","assignee":{"login":"krazijames","id":12911774,"node_id":"MDQ6VXNlcjEyOTExNzc0","avatar_url":"https://avatars3.githubusercontent.com/u/12911774?v=4","gravatar_id":"","url":"https://api.github.com/users/krazijames","html_url":"https://github.com/krazijames","followers_url":"https://api.github.com/users/krazijames/followers","following_url":"https://api.github.com/users/krazijames/following{/other_user}","gists_url":"https://api.github.com/users/krazijames/gists{/gist_id}","starred_url":"https://api.github.com/users/krazijames/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/krazijames/subscriptions","organizations_url":"https://api.github.com/users/krazijames/orgs","repos_url":"https://api.github.com/users/krazijames/repos","events_url":"https://api.github.com/users/krazijames/events{/privacy}","received_events_url":"https://api.github.com/users/krazijames/received_events","type":"User","site_admin":false},"assignees":[{"login":"krazijames","id":12911774,"node_id":"MDQ6VXNlcjEyOTExNzc0","avatar_url":"https://avatars3.githubusercontent.com/u/12911774?v=4","gravatar_id":"","url":"https://api.github.com/users/krazijames","html_url":"https://github.com/krazijames","followers_url":"https://api.github.com/users/krazijames/followers","following_url":"https://api.github.com/users/krazijames/following{/other_user}","gists_url":"https://api.github.com/users/krazijames/gists{/gist_id}","starred_url":"https://api.github.com/users/krazijames/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/krazijames/subscriptions","organizations_url":"https://api.github.com/users/krazijames/orgs","repos_url":"https://api.github.com/users/krazijames/repos","events_url":"https://api.github.com/users/krazijames/events{/privacy}","received_events_url":"https://api.github.com/users/krazijames/received_events","type":"User","site_admin":false}],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/ridi/style-guide/pulls/102/commits","review_comments_url":"https://api.github.com/repos/ridi/style-guide/pulls/102/comments","review_comment_url":"https://api.github.com/repos/ridi/style-guide/pulls/comments{/number}","comments_url":"https://api.github.com/repos/ridi/style-guide/issues/102/comments","statuses_url":"https://api.github.com/repos/ridi/style-guide/statuses/b93979effd27ddb1ae54d7dcd3d9461d3e5cfa0e","head":{"label":"incleaf:master","ref":"master","sha":"b93979effd27ddb1ae54d7dcd3d9461d3e5cfa0e","user":{"login":"incleaf","id":7221609,"node_id":"MDQ6VXNlcjcyMjE2MDk=","avatar_url":"https://avatars2.githubusercontent.com/u/7221609?v=4","gravatar_id":"","url":"https://api.github.com/users/incleaf","html_url":"https://github.com/incleaf","followers_url":"https://api.github.com/users/incleaf/followers","following_url":"https://api.github.com/users/incleaf/following{/other_user}","gists_url":"https://api.github.com/users/incleaf/gists{/gist_id}","starred_url":"https://api.github.com/users/incleaf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/incleaf/subscriptions","organizations_url":"https://api.github.com/users/incleaf/orgs","repos_url":"https://api.github.com/users/incleaf/repos","events_url":"https://api.github.com/users/incleaf/events{/privacy}","received_events_url":"https://api.github.com/users/incleaf/received_events","type":"User","site_admin":false},"repo":{"id":148102399,"node_id":"MDEwOlJlcG9zaXRvcnkxNDgxMDIzOTk=","name":"style-guide","full_name":"incleaf/style-guide","private":false,"owner":{"login":"incleaf","id":7221609,"node_id":"MDQ6VXNlcjcyMjE2MDk=","avatar_url":"https://avatars2.githubusercontent.com/u/7221609?v=4","gravatar_id":"","url":"https://api.github.com/users/incleaf","html_url":"https://github.com/incleaf","followers_url":"https://api.github.com/users/incleaf/followers","following_url":"https://api.github.com/users/incleaf/following{/other_user}","gists_url":"https://api.github.com/users/incleaf/gists{/gist_id}","starred_url":"https://api.github.com/users/incleaf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/incleaf/subscriptions","organizations_url":"https://api.github.com/users/incleaf/orgs","repos_url":"https://api.github.com/users/incleaf/repos","events_url":"https://api.github.com/users/incleaf/events{/privacy}","received_events_url":"https://api.github.com/users/incleaf/received_events","type":"User","site_admin":false},"html_url":"https://github.com/incleaf/style-guide","description":"RIDI Coding Style Guide","fork":true,"url":"https://api.github.com/repos/incleaf/style-guide","forks_url":"https://api.github.com/repos/incleaf/style-guide/forks","keys_url":"https://api.github.com/repos/incleaf/style-guide/keys{/key_id}","collaborators_url":"https://api.github.com/repos/incleaf/style-guide/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/incleaf/style-guide/teams","hooks_url":"https://api.github.com/repos/incleaf/style-guide/hooks","issue_events_url":"https://api.github.com/repos/incleaf/style-guide/issues/events{/number}","events_url":"https://api.github.com/repos/incleaf/style-guide/events","assignees_url":"https://api.github.com/repos/incleaf/style-guide/assignees{/user}","branches_url":"https://api.github.com/repos/incleaf/style-guide/branches{/branch}","tags_url":"https://api.github.com/repos/incleaf/style-guide/tags","blobs_url":"https://api.github.com/repos/incleaf/style-guide/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/incleaf/style-guide/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/incleaf/style-guide/git/refs{/sha}","trees_url":"https://api.github.com/repos/incleaf/style-guide/git/trees{/sha}","statuses_url":"https://api.github.com/repos/incleaf/style-guide/statuses/{sha}","languages_url":"https://api.github.com/repos/incleaf/style-guide/languages","stargazers_url":"https://api.github.com/repos/incleaf/style-guide/stargazers","contributors_url":"https://api.github.com/repos/incleaf/style-guide/contributors","subscribers_url":"https://api.github.com/repos/incleaf/style-guide/subscribers","subscription_url":"https://api.github.com/repos/incleaf/style-guide/subscription","commits_url":"https://api.github.com/repos/incleaf/style-guide/commits{/sha}","git_commits_url":"https://api.github.com/repos/incleaf/style-guide/git/commits{/sha}","comments_url":"https://api.github.com/repos/incleaf/style-guide/comments{/number}","issue_comment_url":"https://api.github.com/repos/incleaf/style-guide/issues/comments{/number}","contents_url":"https://api.github.com/repos/incleaf/style-guide/contents/{+path}","compare_url":"https://api.github.com/repos/incleaf/style-guide/compare/{base}...{head}","merges_url":"https://api.github.com/repos/incleaf/style-guide/merges","archive_url":"https://api.github.com/repos/incleaf/style-guide/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/incleaf/style-guide/downloads","issues_url":"https://api.github.com/repos/incleaf/style-guide/issues{/number}","pulls_url":"https://api.github.com/repos/incleaf/style-guide/pulls{/number}","milestones_url":"https://api.github.com/repos/incleaf/style-guide/milestones{/number}","notifications_url":"https://api.github.com/repos/incleaf/style-guide/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/incleaf/style-guide/labels{/name}","releases_url":"https://api.github.com/repos/incleaf/style-guide/releases{/id}","deployments_url":"https://api.github.com/repos/incleaf/style-guide/deployments","created_at":"2018-09-10T05:14:02Z","updated_at":"2018-09-29T00:39:46Z","pushed_at":"2018-09-29T00:39:45Z","git_url":"git://github.com/incleaf/style-guide.git","ssh_url":"git@github.com:incleaf/style-guide.git","clone_url":"https://github.com/incleaf/style-guide.git","svn_url":"https://github.com/incleaf/style-guide","homepage":null,"size":234,"stargazers_count":0,"watchers_count":0,"language":"PHP","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"other","name":"NOASSERTION","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"ridi:master","ref":"master","sha":"9d68a102f1acafcd23949b3e5b406f78ca0ee3de","user":{"login":"ridi","id":24955411,"node_id":"MDEyOk9yZ2FuaXphdGlvbjI0OTU1NDEx","avatar_url":"https://avatars2.githubusercontent.com/u/24955411?v=4","gravatar_id":"","url":"https://api.github.com/users/ridi","html_url":"https://github.com/ridi","followers_url":"https://api.github.com/users/ridi/followers","following_url":"https://api.github.com/users/ridi/following{/other_user}","gists_url":"https://api.github.com/users/ridi/gists{/gist_id}","starred_url":"https://api.github.com/users/ridi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ridi/subscriptions","organizations_url":"https://api.github.com/users/ridi/orgs","repos_url":"https://api.github.com/users/ridi/repos","events_url":"https://api.github.com/users/ridi/events{/privacy}","received_events_url":"https://api.github.com/users/ridi/received_events","type":"Organization","site_admin":false},"repo":{"id":69972043,"node_id":"MDEwOlJlcG9zaXRvcnk2OTk3MjA0Mw==","name":"style-guide","full_name":"ridi/style-guide","private":false,"owner":{"login":"ridi","id":24955411,"node_id":"MDEyOk9yZ2FuaXphdGlvbjI0OTU1NDEx","avatar_url":"https://avatars2.githubusercontent.com/u/24955411?v=4","gravatar_id":"","url":"https://api.github.com/users/ridi","html_url":"https://github.com/ridi","followers_url":"https://api.github.com/users/ridi/followers","following_url":"https://api.github.com/users/ridi/following{/other_user}","gists_url":"https://api.github.com/users/ridi/gists{/gist_id}","starred_url":"https://api.github.com/users/ridi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ridi/subscriptions","organizations_url":"https://api.github.com/users/ridi/orgs","repos_url":"https://api.github.com/users/ridi/repos","events_url":"https://api.github.com/users/ridi/events{/privacy}","received_events_url":"https://api.github.com/users/ridi/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/ridi/style-guide","description":"RIDI Coding Style Guide","fork":false,"url":"https://api.github.com/repos/ridi/style-guide","forks_url":"https://api.github.com/repos/ridi/style-guide/forks","keys_url":"https://api.github.com/repos/ridi/style-guide/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ridi/style-guide/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ridi/style-guide/teams","hooks_url":"https://api.github.com/repos/ridi/style-guide/hooks","issue_events_url":"https://api.github.com/repos/ridi/style-guide/issues/events{/number}","events_url":"https://api.github.com/repos/ridi/style-guide/events","assignees_url":"https://api.github.com/repos/ridi/style-guide/assignees{/user}","branches_url":"https://api.github.com/repos/ridi/style-guide/branches{/branch}","tags_url":"https://api.github.com/repos/ridi/style-guide/tags","blobs_url":"https://api.github.com/repos/ridi/style-guide/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ridi/style-guide/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ridi/style-guide/git/refs{/sha}","trees_url":"https://api.github.com/repos/ridi/style-guide/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ridi/style-guide/statuses/{sha}","languages_url":"https://api.github.com/repos/ridi/style-guide/languages","stargazers_url":"https://api.github.com/repos/ridi/style-guide/stargazers","contributors_url":"https://api.github.com/repos/ridi/style-guide/contributors","subscribers_url":"https://api.github.com/repos/ridi/style-guide/subscribers","subscription_url":"https://api.github.com/repos/ridi/style-guide/subscription","commits_url":"https://api.github.com/repos/ridi/style-guide/commits{/sha}","git_commits_url":"https://api.github.com/repos/ridi/style-guide/git/commits{/sha}","comments_url":"https://api.github.com/repos/ridi/style-guide/comments{/number}","issue_comment_url":"https://api.github.com/repos/ridi/style-guide/issues/comments{/number}","contents_url":"https://api.github.com/repos/ridi/style-guide/contents/{+path}","compare_url":"https://api.github.com/repos/ridi/style-guide/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ridi/style-guide/merges","archive_url":"https://api.github.com/repos/ridi/style-guide/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ridi/style-guide/downloads","issues_url":"https://api.github.com/repos/ridi/style-guide/issues{/number}","pulls_url":"https://api.github.com/repos/ridi/style-guide/pulls{/number}","milestones_url":"https://api.github.com/repos/ridi/style-guide/milestones{/number}","notifications_url":"https://api.github.com/repos/ridi/style-guide/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ridi/style-guide/labels{/name}","releases_url":"https://api.github.com/repos/ridi/style-guide/releases{/id}","deployments_url":"https://api.github.com/repos/ridi/style-guide/deployments","created_at":"2016-10-04T14:20:23Z","updated_at":"2018-10-04T08:08:06Z","pushed_at":"2018-10-02T03:20:18Z","git_url":"git://github.com/ridi/style-guide.git","ssh_url":"git@github.com:ridi/style-guide.git","clone_url":"https://github.com/ridi/style-guide.git","svn_url":"https://github.com/ridi/style-guide","homepage":null,"size":228,"stargazers_count":87,"watchers_count":87,"language":"PHP","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":15,"mirror_url":null,"archived":false,"open_issues_count":2,"license":{"key":"other","name":"NOASSERTION","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":15,"open_issues":2,"watchers":87,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/ridi/style-guide/pulls/102"},"html":{"href":"https://github.com/ridi/style-guide/pull/102"},"issue":{"href":"https://api.github.com/repos/ridi/style-guide/issues/102"},"comments":{"href":"https://api.github.com/repos/ridi/style-guide/issues/102/comments"},"review_comments":{"href":"https://api.github.com/repos/ridi/style-guide/pulls/102/comments"},"review_comment":{"href":"https://api.github.com/repos/ridi/style-guide/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/ridi/style-guide/pulls/102/commits"},"statuses":{"href":"https://api.github.com/repos/ridi/style-guide/statuses/b93979effd27ddb1ae54d7dcd3d9461d3e5cfa0e"}},"author_association":"MEMBER"}}
{"actor":{"display_login":"incleaf"}}