程序设计

专业和发烧友程序员的问答

17
与Gulp一起使用Concat脚本
举例来说,假设您要在Backbone或任何其他平台上构建项目,并且需要按特定顺序加载脚本,例如,underscore.js需要在之前加载backbone.js。 我如何获得它来连接脚本,以便它们井井有条? // JS concat, strip debugging and minify gulp.task('scripts', function() { gulp.src(['./source/js/*.js', './source/js/**/*.js']) .pipe(concat('script.js')) .pipe(stripDebug()) .pipe(uglify()) .pipe(gulp.dest('./build/js/')); }); 我的脚本顺序正确source/index.html,但是由于文件是按字母顺序组织的,因此gulp将underscore.js在之后连接backbone.js,而我的脚本顺序source/index.html并不重要,它会查看目录中的文件。 那么有人对此有想法吗? 我有最好的办法是重新命名与供应商的脚本1,2,3给他们以正确的顺序,但我不知道如果我喜欢这个。 当我了解到更多信息后,我发现Browserify是一个很好的解决方案,乍一看可能很麻烦,但是它很棒。
191 javascript  gulp 


2
哪些Boost功能与C ++ 11重叠?
几年前,我把我的C ++技能放在架子上,现在看来,当我再次需要它们时,情况发生了变化。 现在我们有了C ++ 11,我的理解是它与许多Boost功能重叠。 是否存在一些重叠之处的摘要,哪些Boost库将成为传统,推荐使用哪些C ++ 11功能而不是boost功能,以及哪些更好?
191 c++  boost  c++11 

3
为什么在使用()调用Node.js REPL中的函数起作用?
为什么可以用经node.js测试的JavaScript调用此函数: ~$ node > function hi() { console.log("Hello, World!"); }; undefined > hi [Function: hi] > hi() Hello, World! undefined > hi)( // WTF? Hello, World! undefined > 为什么最后一次呼叫“” hi)(有效?是node.js中的错误,V8引擎中的错误,正式未定义的行为还是对所有解释程序实际上有效的JavaScript?


3
可以在robots.txt中使用相对的站点地图网址吗?
我可以在robots.txt中为站点地图文件写以下相对URL吗? sitemap: /sitemap.ashx 还是我必须使用站点地图文件的完整(绝对)URL,例如: sitemap: http://subdomain.domain.com/sitemap.ashx 为什么我想知道: 我拥有一个新的博客服务www.domain.com,该服务允许用户在accountname.domain.com上进行博客。 我使用通配符,因此所有子域(帐户)都指向:“ blog.domain.com”。 在blog.domain.com中,我放置了robots.txt,以便搜索引擎找到站点地图。但是由于通配符,所有用户帐户共享相同的robots.txt文件,这就是为什么我不能使用第二种选择的原因。现在,我无法对txt文件使用url重写。(我想IIS的更高版本可以解决这个问题?)
191 seo  sitemap  robots.txt 

4
如何在Ant中获取构建目标的列表?
我的代码库有一个build.properties别人写的长文件。我想查看可用的内置目标,而不必手动搜索文件。ant是否对此具有命令(例如类似命令)ant show-targets,它将使它列出构建文件中的所有目标?
191 ant 

7
Google Maps Android API v2-交互式信息窗口(例如原始的android Google地图)
InfoWindow在使用新的Google Maps API v2单击标记后,我试图进行自定义。我希望它看起来像Google的原始地图应用程序。像这样: 当我ImageButton进入内部时,它不起作用-整个InfoWindow被选中,而不仅仅是ImageButton。我读到这是因为没有它View本身,而是快照,所以不能将各个项目区分开。 编辑: 在文档中(感谢Disco S2): 如上一节有关信息窗口的部分所述,信息窗口不是实时视图,而是将视图作为图像渲染到地图上。因此,您在视图上设置的所有侦听器都将被忽略,并且您无法区分视图各部分上的单击事件。建议您不要在自定义信息窗口中放置交互式组件,例如按钮,复选框或文本输入。 但是,如果Google使用它,则必须有某种方法可以实现它。有人有什么主意吗?

10
为什么“ System.out.println”在Android中不起作用?
我想在控制台中打印某些内容,以便对其进行调试。但是由于某种原因,我的Android应用程序中没有任何内容。 那我该如何调试? public class HelloWebview extends Activity { WebView webview; private static final String LOG_TAG = "WebViewDemo"; private class HelloWebViewClient extends WebViewClient { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } } /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) …

5
什么是“一流”物品?
在给定的编程语言中,什么时候将对象或其他东西称为“一流”,为什么?它们与没有语言的语言有何不同? 编辑。当一个人说“一切都是对象”时(就像在Python中一样),他的确意味着“一切都是一流的”吗?

7
为什么ARC仍需要@autoreleasepool?
在大多数情况下,对于ARC(自动引用计数),我们根本不需要考虑使用Objective-C对象进行内存管理。不再允许创建NSAutoreleasePool,但是有一个新语法: @autoreleasepool { … } 我的问题是,当我不应该手动释放/自动释放时,为什么会需要这个? 编辑:总结一下我从所有答案和评论中得出的结论: 新语法: @autoreleasepool { … } 是的新语法 NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; … [pool drain]; 更重要的是: ARC使用autorelease和release。 为此需要一个自动释放池。 ARC不会为您创建自动发布池。然而: 每个Cocoa应用程序的主线程中已经有一个自动释放池。 在两种情况下,您可能想使用@autoreleasepool: 当您处于辅助线程中并且没有自动释放池时,必须进行自己的设置以防止泄漏,例如myRunLoop(…) { @autoreleasepool { … } return success; }。 当您希望创建更多本地池时,如@mattjgalloway在其答案中所示。

17
IE9边界半径和背景渐变出血
IE9显然可以通过使用CSS3标准定义来处理圆角border-radius。 支持边界半径和背景渐变怎么样?是的,IE9分别支持它们,但是如果将两者混合使用,则渐变会从圆角流出。 我还看到阴影在圆角框下面显示为实心黑线的奇怪现象。 这是IE9中显示的图像: 我该如何解决此问题?

9
iOS 8删除了“ minimum-ui”视口属性,是否还有其他“软全屏”解决方案?
(这是一个多部分的问题,我将尽力总结一下该场景。) 我们目前正在构建一个响应式Web应用程序(新闻阅读器),允许用户在选项卡式内容之间滑动,以及在每个选项卡式内容内垂直滚动。 解决该问题的常用方法是使用一个包装器div来填充浏览器视口,将其设置overflow为hidden或auto,然后在其中进行水平和/或垂直滚动​​。 这种方法很棒,但有一个主要缺点:由于文档的高度与浏览器的视口完全相同,因此移动浏览器不会隐藏地址栏/导航菜单。 有许多hack和视口属性可以使我们获得更多的屏幕空间,但效果却不如minimal-uiiOS 7.1中引入的效果。 昨天有消息称,iOS 8 beta4已从minimal-uiMobile Safari中删除(请参阅iOS 8发行说明中的 Webkit部分),这使我们感到奇怪: Q1。是否仍然可以在Mobile Safari中隐藏地址栏? 据我们所知,iOS 7 不再对这种window.scrollTo入侵做出响应,这表明我们必须使用较小的屏幕空间,除非我们采用垂直布局或使用mobile-web-app-capable。 Q2。是否仍有可能获得类似的软全屏体验? 通过软全屏,我的意思是不使用mobile-web-app-capablemeta标签。 我们的网络应用程序构建为易于访问,可以使用本机浏览器菜单将任何页面添加为书签或共享。通过添加,mobile-web-app-capable我们防止用户调用这样的菜单(当菜单保存到主屏幕时),这会使用户感到困惑和反感。 minimal-ui过去是中间地带,默认情况下隐藏菜单,但可通过轻按使其保持可访问状态 -尽管Apple可能由于其他可访问性问题(例如用户不知道在何处激活菜单)而将其删除。 Q3。全屏体验值得麻烦吗? 似乎全屏API不会很快进入iOS,但是即使这样,我也看不到菜单如何保持可访问性(Android上的Chrome也是一样)。 在这种情况下,也许我们应该只保留移动浏览器,并考虑视口高度(对于iPhone 5+,它是460 = 568-108,其中108包括OS栏,地址栏和导航菜单;对于iPhone 4或更老的是372)。 很想听听其他选择(除了构建本机应用程序之外)。

14
我如何理解Python循环的`else`子句?
许多Python程序员可能没有意识到while循环和for循环的语法包含一个可选else:子句: for val in iterable: do_something(val) else: clean_up() else子句的主体是执行某些类型的清理操作的好地方,并在循环的正常终止时执行:即,使用return或break跳过else子句退出循环;continue执行后退出。我知道这只是因为我只是看着它(再次),因为我永远记得当该else子句被执行。 总是?顾名思义,在循环的“失败”上?定期终止吗?即使循环退出return?我永远不能完全确定,不查它。 我将不确定性归咎于关键字的选择:我发现else这种语义难以置信。我的问题不是“为什么要为此目的使用该关键字”(虽然只有在阅读了答案和评论之后,我才可能会投票关闭该关键字),但我如何考虑该else关键字,以便其语义有意义,我因此可以记住吗? 我敢肯定,对此进行了大量讨论,并且我可以想象做出这一选择是为了与try语句的else:子句(我也必须查找)保持一致,并且其目标是不添加到该语句的列表中。 Python的保留字。也许选择的原因else将阐明其功能并使之更加令人难忘,但我是将名称与功能联系在一起,而不是出于历史解释本身。 这个问题的答案(我的问题作为与之重复的问题简短地结束了)包含很多有趣的背景故事。我的问题有不同的侧重点(如何将特定语义else与关键字选择联系起来),但是我觉得应该在某个地方链接到该问题。

10
画布上的Android Center文本
我正在尝试使用下面的代码显示文本。问题是文本没有水平居中。当我为设置坐标时drawText,它将在此位置设置文本的底部。我希望绘制文本,以便文本也水平居中。 这是进一步显示我的问题的图片: @Override protected void onDraw(Canvas canvas) { // TODO Auto-generated method stub super.onDraw(canvas); //canvas.drawRGB(2, 2, 200); Paint textPaint = new Paint(); textPaint.setARGB(200, 254, 0, 0); textPaint.setTextAlign(Align.CENTER); textPaint.setTypeface(font); textPaint.setTextSize(300); canvas.drawText("Hello", canvas.getWidth()/2, canvas.getHeight()/2 , textPaint); }

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.