«idioms» 태그된 질문

프로그래밍 관용구는 프로그래밍 언어 제한을 극복하고 / 또는 코드의 문자 적 ​​의미와 분리 된 목적으로 일반적으로 사용되는 코드를 작성하는 방법입니다. 또한, 관용구는 하나 이상의 명백한 방법이있을 때 코드를 작성하는 데 선호되는 방법입니다.

30
var functionName = function () {} vs function functionName () {}
최근에 다른 사람의 JavaScript 코드를 유지 관리하기 시작했습니다. 버그를 수정하고 기능을 추가하며 코드를 정리하고 일관성을 유지하려고합니다. 이전 개발자는 함수를 선언하는 두 가지 방법을 사용했으며 그 뒤에 이유가 있는지 알아낼 수 없습니다. 두 가지 방법은 다음과 같습니다. var functionOne = function() { // Some code }; function functionTwo() { // Some …

30
__name__ ==“__main__”인 경우 어떻게합니까?
На этот вопрос есть ответы на 스택 오버플로 на русском : Что делают 경우 __name__ == "__main__"? 다음 코드가 주어지면 무엇을 if __name__ == "__main__":합니까? # Threading example import time, thread def myfunction(string, sleeptime, lock, *args): while True: lock.acquire() time.sleep(sleeptime) lock.release() time.sleep(sleeptime) if __name__ == "__main__": lock = thread.allocate_lock() thread.start_new_thread(myfunction, …

10
C ++에서 팩토리 메소드 패턴을 올바르게 구현하는 방법
C ++에는 이것이 단순하게 들리지만 정직하게 수행하는 방법을 알지 못하기 때문에 오랫동안 편안하게 생겼습니다. C ++에서 팩토리 메소드를 올바르게 구현하려면 어떻게해야합니까? 목표 : 허용 할 수없는 결과와 성능 저하없이 클라이언트가 객체의 생성자 대신 팩토리 메소드를 사용하여 일부 객체를 인스턴스화 할 수 있도록합니다. "팩토리 메소드 패턴"이란 객체 내부의 정적 팩토리 메소드 …


9
C ++지도 맵을 어떻게 반복 할 수 있습니까?
std::mapC ++에서 루프를 어떻게 반복 할 수 있습니까? 내지도는 다음과 같이 정의됩니다. std::map< std::string, std::map<std::string, std::string> > 예를 들어 위 컨테이너에는 다음과 같은 데이터가 들어 있습니다. m["name1"]["value1"] = "data1"; m["name1"]["value2"] = "data2"; m["name2"]["value1"] = "data1"; m["name2"]["value2"] = "data2"; m["name3"]["value1"] = "data1"; m["name3"]["value2"] = "data2"; 이 맵을 반복하고 다양한 값에 액세스하려면 …

23
첫 번째 항목을 반환하는 Python 관용구 또는 없음
나에게 일어나지 않는 간단한 방법이 있다고 확신합니다. 목록을 반환하는 많은 메소드를 호출하고 있습니다. 목록이 비어있을 수 있습니다. 목록이 비어 있지 않으면 첫 번째 항목을 반환하고 싶습니다. 그렇지 않으면 None을 반환하고 싶습니다. 이 코드는 작동합니다 : my_list = get_list() if len(my_list) > 0: return my_list[0] return None 나는 이것을하기위한 간단한 한 …

30
Java에서 int 배열을 어떻게 되돌 립니까?
На этот вопрос есть ответы на 스택 오버플로 на русском : Как перевернуть массив в Джаве? Java에서 int 배열을 되돌리려 고합니다. 이 방법은 배열을 바꾸지 않습니다. for(int i = 0; i < validData.length; i++) { int temp = validData[i]; validData[i] = validData[validData.length - i - 1]; validData[validData.length - i - …
238 java  arrays  idioms  idiomatic 

21
'for'루프에서 마지막 요소를 감지하는 pythonic 방법은 무엇입니까?
for 루프에서 마지막 요소에 대해 특별한 처리를 수행하는 가장 좋은 방법 (보다 콤팩트하고 "파이 토닉 한"방법)을 알고 싶습니다. 사이에 호출해야하는 코드가 있습니다요소 마지막 에서는 표시되지 않습니다. 내가 현재하는 방법은 다음과 같습니다. for i, data in enumerate(data_list): code_that_is_done_for_every_element if i != len(data_list) - 1: code_that_is_done_between_elements 더 좋은 방법이 있습니까? 참고 :을 …

16
파이썬 : None을 빈 문자열로 변환하는 가장 관용적 인 방법은 무엇입니까?
다음을 수행하는 가장 관용적 인 방법은 무엇입니까? def xstr(s): if s is None: return '' else: return s s = xstr(a) + xstr(b) 업데이트 : str (s)을 사용하는 Tryptich의 제안을 통합하여 문자열 이외의 다른 유형 에서이 루틴을 작동시킵니다. Vinay Sajip의 람다 제안에 크게 감명을 받았지만 코드를 비교적 간단하게 유지하고 싶습니다. …
156 string  python  idioms 



9
단일 목록의 쌍
종종 나는 쌍으로 목록을 처리해야 할 필요성을 발견했습니다. 나는 그것을 수행하는 비단뱀적이고 효율적인 방법이 무엇인지 궁금해했으며 Google에서 이것을 발견했습니다. pairs = zip(t[::2], t[1::2]) 나는 그것이 충분히 비단뱀 적이라고 생각했지만, 최근 관용어 대 효율성에 관한 토론을 한 후 몇 가지 테스트를하기로 결정했습니다. import time from itertools import islice, izip def pairs_1(t): …
98 python  list  zip  slice  idioms 

10
`if key in dict` vs.`try / except`-어느 것이 더 읽기 쉬운 관용구입니까?
관용구와 가독성에 대한 질문이 있는데,이 경우에 파이썬 철학이 충돌하는 것 같습니다. 사전 B에서 사전 A를 만들고 싶습니다. 특정 키가 B에 없으면 아무 작업도 수행하지 않고 계속합니다. 어느 쪽이 더 낫습니까? try: A["blah"] = B["blah"] except KeyError: pass 또는 if "blah" in B: A["blah"] = B["blah"] "용서를 구하고 구하라"대 "단순함과 명료 …

3
Groovy와 문자열 연결
Groovy에서 문자열을 연결하는 가장 좋은 (관용적) 방법은 무엇입니까? 옵션 1: calculateAccountNumber(bank, branch, checkDigit, account) { bank + branch + checkDigit + account } 옵션 2 : calculateAccountNumber(bank, branch, checkDigit, account) { "$bank$branch$checkDigit$account" } 이전 Groovy 웹 사이트에서이 주제에 대한 흥미로운 점을 발견했습니다. 할 수 있지만 실행 취소하는 것이 좋습니다. Java에서와 …

9
이벤트 선언에 익명의 빈 대리자를 추가하는 데 단점이 있습니까?
이 관용구에 대한 몇 가지 언급을 보았습니다 ( SO 포함 ) : // Deliberately empty subscriber public event EventHandler AskQuestion = delegate {}; 장점은 분명합니다. 이벤트를 발생시키기 전에 null을 확인할 필요가 없습니다. 그러나 단점이 있는지 이해하고 싶습니다. 예를 들어, 널리 사용되고 있고 유지 관리 문제를 일으키지 않을만큼 투명한 것입니까? 빈 …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.